Skip to content

Typography

Typography tokens control font families, sizes, and text styles across VUIII components.

Typefaces

TokenValueDescription
--vuiii-typeface-body"Inter", "Helvetica Neue", Helvetica, Arial, sans-serifBody text font stack
--vuiii-typeface-displayvar(--vuiii-typeface-body)Display/heading font stack

Font Size Scale

TokenValueSizeDescription
--vuiii-fontSize--tinycalc(var(--vuiii-fontSize) * 0.75)0.75remCaptions, fine print
--vuiii-fontSize--smallcalc(var(--vuiii-fontSize) * 0.85)0.85remLabels, secondary text
--vuiii-fontSize1rem1remBase font size
--vuiii-fontSize--largecalc(var(--vuiii-fontSize) * 1.25)1.25remSubheadings
--vuiii-fontSize--x-largecalc(var(--vuiii-fontSize) * 1.5)1.5remSection headers
--vuiii-fontSize--2x-largecalc(var(--vuiii-fontSize) * 2)2remPage titles
--vuiii-fontSize--3x-largecalc(var(--vuiii-fontSize) * 3)3remLarge displays
--vuiii-fontSize--4x-largecalc(var(--vuiii-fontSize) * 4)4remHero text

Typography Variants

Each variant includes tokens for: fontSize, fontWeight, lineHeight, textTransform, color, opacity.

Display

TokenValue
--vuiii-typography-display-fontSizevar(--vuiii-fontSize--4x-large)
--vuiii-typography-display-fontWeight600
--vuiii-typography-display-lineHeight1.2
--vuiii-typography-display-textTransformnone
--vuiii-typography-display-colorinherit
--vuiii-typography-display-opacity1

Headings

VariantFont Size TokenFont Weight
heading1--vuiii-fontSize--2x-large600
heading2--vuiii-fontSize--large600
heading3--vuiii-fontSize600
heading4--vuiii-fontSize--small600
heading5--vuiii-fontSize--tiny600
heading6--vuiii-fontSize--tiny600

All headings use lineHeight: 1.2.

Body Text

TokenValueDescription
--vuiii-typography-body1-fontSizevar(--vuiii-fontSize)Primary body text
--vuiii-typography-body1-fontWeight400
--vuiii-typography-body1-lineHeight1.2
--vuiii-typography-body2-fontSizevar(--vuiii-fontSize)Secondary body text
--vuiii-typography-body2-fontWeight400
--vuiii-typography-body2-opacity0.65Dimmed appearance

Label

TokenValue
--vuiii-typography-label-fontSizevar(--vuiii-fontSize--small)
--vuiii-typography-label-fontWeight600
--vuiii-typography-label-lineHeight1.2

Caption

TokenValue
--vuiii-typography-caption-fontSizevar(--vuiii-fontSize--tiny)
--vuiii-typography-caption-fontWeight400
--vuiii-typography-caption-lineHeight1.2
--vuiii-typography-caption-textTransformuppercase
--vuiii-typography-caption-opacity0.65

Description

TokenValue
--vuiii-typography-description-fontSizevar(--vuiii-fontSize--tiny)
--vuiii-typography-description-fontWeight400
--vuiii-typography-description-lineHeight1.2
--vuiii-typography-description-opacity0.65

Customization

Change the base font size to scale all typography:

css
:root {
  --vuiii-fontSize: 0.875rem; /* Smaller base */
}

Use a custom font family:

css
:root {
  --vuiii-typeface-body: "Roboto", sans-serif;
  --vuiii-typeface-display: "Roboto Slab", serif;
}

Released under the MIT License.