Skip to content

Responsive Typography#189

Merged
benjaminleonard merged 4 commits into
masterfrom
responsive-type
May 26, 2026
Merged

Responsive Typography#189
benjaminleonard merged 4 commits into
masterfrom
responsive-type

Conversation

@benjaminleonard

@benjaminleonard benjaminleonard commented May 21, 2026

Copy link
Copy Markdown
Collaborator

Introduces a layered typography architecture and the first responsive semantic tokens (heading-*). Existing text-sans-* callsites continue to work.

What's new

Three layers

  1. Pixel-named primitives (source of truth): text-sans-11 / 12 / 14 / 16 / 18 / 20 / 22 / 25 / 28 / 36 / 50 / 52 / 65.
  2. Named aliases (existing API): text-sans-sm / md / lg / xl / 2xl / 3xl / 4xl / 5xl now @apply the matching pixel primitive. Figma comments retained on the aliases so the Figma → code mapping stays intact. 5xl is new (65px) to cover the marketing-scale display sizes.
  3. Responsive semantic tokens (new): heading-display / heading-xl / heading-lg / heading-md step through primitives at 600 / 800 / 1000px.

Letter-spacing curve

All sans primitives now use em for letter-spacing along an optical tracking curve (0.861 / size − 0.0383 em). Small text opens up for legibility, display sizes tighten. Zero crossing sits around 22px. Was doing this manually previously, but this is a bit more consistent.

Preview

New preview/TypographyShowcase.tsx with a viewport-width ruler that highlights active breakpoints, plus a Components / Typography view toggle in the preview header. Resize the window to verify each heading token's steps.

image

Not here

  • Responsive body tokens, there doesn't seem to be enough consistency in the marketing site usage to infer something here.

Canary: npm install @oxide/design-system@6.2.1-canary.1e4566b

@benjaminleonard benjaminleonard merged commit 214b97f into master May 26, 2026
2 checks passed
@benjaminleonard benjaminleonard deleted the responsive-type branch May 26, 2026 13:12
david-crespo pushed a commit to oxidecomputer/console that referenced this pull request May 27, 2026
Upgraded design system includes tweaked type tokens.
Existing `text-sans-*` callsites continue to work so that's all left the
same.

Will switch out for semantic responsive versions in some places when I
work on responsive console.

oxidecomputer/design-system#189
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant