v0.2 · Primitives reference
The foundations — type, color, spacing, surface — that every component in this library draws from. Built for the Trifork presentation design system. Reference values live in assets/tokens.js.
Built for 1920×1080 slides. For product UI, divide sizes by ~1.6. Sentence case, never title case.
Plainspoken, declarative. Em-dashes carry attached clauses. Avoid hype words.
Single sans family. UI uses 400–700 most often; 800/900 reserved for display moments.
Reserved for pull quotes and attribution. Never UI. The em-dash before the attribution is part of the convention.
Two colors do most of the work. Orange is the single accent; teal is the only text color.
One pattern across the whole system: warm sand top-left, cool blue-gray bottom-right.
Each base color expands to an 11-stop scale (50 → 950). Used to pick same-family text contrast (slate-50 on slate-800) and adjacent-shade gradient stops. T.shades.<family>[idx]
Spacing values are integers (px), keyed by step number. Skip 7, 9, 11, 13–15, 17–19 — there's no use case dense enough to need them.
Cards default to md (8px). Use lg (12px) for hero cards and large containers. pill for capsule buttons.
Six levels. Cards default to card. Hover lifts to md. Never stack multiple layers.
Restrained. No springs, no bounces, no parallax. Reduced-motion users get nothing animated.