Semantic tokens
Change values, not naming. `surface-raised` should stay a panel surface no matter which stack renders it.
This kit is backend-agnostic by design. It defines semantic tokens, typography roles, page archetypes, motion rules, and explicit form and status patterns so the visual language survives a framework change without becoming a component-library accident.
Operational products stay grounded in dark surfaces with warm paper contrast.
Display typography is reserved for public narrative moments, not routine admin chrome.
Token names describe function, so another stack can swap values without rewriting structure.
The art direction is civic editorial: dark ink-like canvases, warm paper and clay accents, serif display headlines for public moments, clean sans-serif UI text for operations, and restrained motion that clarifies hierarchy instead of adding noise.
Change values, not naming. `surface-raised` should stay a panel surface no matter which stack renders it.
Start from a page behavior model such as campaign, library, event, or operations before composing components.
Use one entrance cue, one depth cue, and one affordance cue. Anything beyond that needs a stronger reason.
The contract uses semantic naming so the visual language can move from Rails to Django, Phoenix, Rust templates, React, or static HTML without coupling the system to one implementation detail.
If another brand needs different colors, swap the token values. Do not rename the contract or rebuild the archetypes around raw color literals.
One display face and one UI face are enough. The distinction is functional, not ornamental.
A civic headline carries weight without shouting.
Display role Use only for public-facing hero moments, campaign titles, and editorial emphasis.Filters, forms, tables, and moderation state stay crisp in the UI face.
UI role Use for navigation, forms, labels, body copy, data rows, and metadata.Live now · Verified · Draft
Metadata role Keep metadata short, uppercase or microcopy-style, and easy to scan.The page model matters more than the component list. These four archetypes define what gets prominence, what stays quiet, and how information should be scanned.
Motion improves orientation, feedback, and depth. Form and status patterns must stay explicit enough for operational contexts where ambiguity wastes time.
Backends influence data shape, permissions, caching, and workflow. They should not dictate color roles, spacing rhythm, heading hierarchy, or interaction density.
1. Copy the token contract. 2. Map tokens into the destination styling system. 3. Rebuild one of the page archetypes. 4. Replace demo content with product data. 5. Adjust token values only after the UX survives intact.