Typography
auri ships a type scale, not a typeface. Components inherit whatever font your application uses, so they look native in your product on day one — the scale is what makes twelve components read as one object.
The three roles
| Role | Tokens | Sample |
|---|---|---|
| value — the big number | 1.75rem / 600, tracking −0.025em | 4.8% |
| label — what it is | 0.8125rem / 500 | Error rate |
| caption — the context | 0.75rem / 400 | last 15 min |
Numbers never jiggle
Every value that can update in place uses font-variant-numeric: tabular-nums, so a
stat climbing from 0.4 to 4.8 doesn't shove its neighbors. Streaming UI
lives or dies on this detail:
Why components inherit your font
A catalog drops into someone else's product. Shipping a typeface would make agent-rendered surfaces look like a foreign object inside the host app — so the components set sizes, weights, and numerics, and leave the family to you.
This site's voice: Geist
The docs are set in Geist (Vercel, SIL OFL 1.1), self-hosted as variable fonts — light, medium, bold — with Geist Mono for the wire and the logs. That's the site making a choice a host app is equally free to make.