Token studio

MASTER-UI-ENGINE · live design variables for the whole kit

Back to the visual lab

Move a token, watch everything re-derive

Every control writes one custom property on <html>. The engine's semantic tokens, the component sheet and the sample column below all recompute from it — the same cascade your project gets when you override the primitives. Nothing is saved to the library: this is a preview tool, and the block it prints belongs in your own token file.

Controls

live
221°

Writes --color-primary-500 and the whole brand ramp.

83%

0% gives a neutral zinc brand colour; the ramp keeps its lightness ladder.


215°

Writes --color-gray-50 … 950: surfaces, text, borders.

0

Negative pulls the neutrals warm (amber), positive cool (blue), and lifts their chroma.


8px

--radius-base, with sm / md / lg derived at the kit's 0.5× · 1.5× · 2×.

16px

--space-4; every other step is re-scaled from it. Control heights stay 44px.

100%

Multiplies the --text-* ramp only; spacing keeps its own rhythm.


Preview tool: it changes this page only. Copy the block into your project's own token file — design-tokens/engine.css in this repo, or your app's :root — to make it real.

Contrast guard

WCAG 2.1 AA · 4.5:1

    Live sample

    components.css

    Buttons

    Badges & chips

    Neutral Primary Success Warning Danger Solid
    Inputs take the radius and the focus ring.
    Text scale drives the label, value and helper together.

    Card

    Starter workspace

    A nested card proves the surface, hairline and shadow tokens all move with the neutral hue — and that the tint on the badge stays readable.

    3 seats Renews 12 Mar

    Table row

    Workspace members
    Name Role Status Seats
    Ada Lovelace Owner Active 12
    Grace Hopper Admin Invited 4
    Alerts use the tint ramp Soft backgrounds are alphas over the surface, so the same override works in light and dark.

    Your override block

    0 tokens

    Paste this after the engine import in your project's token file. Only the lines that differ from the shipped defaults are printed.

    tokens.css
    /* … */