Launch prototype

Primitives

Typography

Type scale and weight system based on Untitled UI conventions. Heading sizes use negative letter-spacing for optical tightening.

Type scale

Sizes follow a modular scale. Display sizes are used for headings; text sizes for body and UI copy.

Dew

Name

Display 2xl

Size

72px

Line height

90px

Tracking

-2%

Dew

Name

Display xl

Size

60px

Line height

72px

Tracking

-2%

Dew

Name

Display lg

Size

48px

Line height

60px

Tracking

-2%

Dew

Name

Display md

Size

36px

Line height

44px

Tracking

-2%

Dew

Name

Display sm

Size

30px

Line height

38px

Tracking

-1%

Dew

Name

Display xs

Size

24px

Line height

32px

Tracking

-1%

Dew

Name

Text xl

Size

20px

Line height

30px

Tracking

0%

Dew

Name

Text lg

Size

18px

Line height

28px

Tracking

0%

Dew

Name

Text md

Size

16px

Line height

24px

Tracking

0%

Dew

Name

Text sm

Size

14px

Line height

20px

Tracking

0%

Dew

Name

Text xs

Size

12px

Line height

18px

Tracking

0%

Font weights

ExampleNameValueUsage
The quick brown foxRegular400Body copy, descriptions
The quick brown foxMedium500Labels, nav items, captions
The quick brown foxSemibold600Headings, button labels, emphasis
The quick brown foxBold700Display type, marketing headers

Text wrapping

Any real component copy that can wrap to two or more lines - a Modal/Alert/Toast/Tooltip title or description, a SectionHeader heading/subheading, an Accordion item title, a Checkbox/RadioButton/Toggle label or hint, a RadioGroup card's title or description - carries Tailwind's text-balance utility (text-wrap: balance). It evens out the line lengths of a wrapped heading or short paragraph instead of leaving a single short orphan word on the last line. Single-line, intentionally-clipped text (a Badge/Tag label, a Button label, a Table header cell) doesn't need it - text-balance only matters once text is actually allowed to wrap.

This documentation site's own prose (every heading and paragraph inside .prose-doc) has used the same utility from the start - this section makes that existing, previously-unstated convention explicit and extends it to the real component layer (components/base/**/components/application/ **) as well, not just doc-page copy.

Font family

--font-barlow is set to Barlow - the primary typeface of the DEW design system. The type scale above previews in Barlow, and it's applied directly on every component's root element (Button, Input, Badge, Checkbox, Tag, Tooltip…), so components inherit it wherever they're used, regardless of the surrounding page font.

--font-sans is set to Geist and is scoped to this documentation site's own UI - sidebar, headings, body copy - not the design system itself.

--font-mono is set to Geist Mono for code snippets and token values across the documentation UI.