What the source of truth is, what a thing is called on each side, which files to take into a design tool, and what the badge promises a screen.
The system has three sources of truth and each answers a different question. When two of them disagree, the one whose question is being asked decides.
| Question | Decided by | Why |
|---|---|---|
| How it looks | The design handoff | It decides shape, density and behaviour. When the implementation and the handoff disagree, the handoff wins — unless a written reason stands beside the difference. |
| What a value is | The token file | Colours, spacing, radii, shadows, motion and the type scale. The stylesheet and the utilities are both generated from it — no other value exists in the product. |
| What a component can do | The component page | Variants, sizes, states and what a primitive deliberately cannot do. The page renders the real component, so it cannot promise something the kit does not do. |
In a design the element goes by its selector, in code by its export name. A property is the name of the component's property, a value one member of its set. Nothing is translated between design and code — and because nothing is translated, nothing can drift.
surface-2, not "Background / Secondary". A shared vocabulary between designer and developer is the whole point of the system.arrow-right, not "right arrow". An operation key is not translated at all: the server holds it.Four files, all written by the build from the same sources the product is built from. None is written by hand, so none can describe a kit that does not exist.
| File | What is inside |
|---|---|
| Tokens | The whole palette, the scales, the type and the motion in the standard design-token format — the same file the stylesheet is generated from. |
| Icons (92 SVG) | Both sets as files, drawn by the same component the application draws with. |
| Components | The primitives with their selector, status, version, tokens and property sets. It answers what a primitive can do without opening the code. |
The badge beside a component's name tells a developer whether the API can be relied on. In a design it means something slightly different — whether a screen can be built on that component yet.
The primitive's version stands beside the badge. The components file carries the version of the whole kit, so a library can tell that it is behind — and behind what.