HextorUI
theme

Hextor data-viz & verdict palette (FROZEN)

Five axis slots in fixed order plus the reserved verdict palette. Axis order and colour are frozen forever — changing either invalidates every Skill Card ever shared.

npx shadcn@latest add @hextor/viz-tokens
No preview for this item type — registry:theme ships configuration only, with no files to render or read.

Docs

AXIS SLOTS are fixed in order and colour, never cycled, never reassigned. The radar's silhouette is only comparable across users and across seasons if both are frozen; changing either invalidates every Skill Card ever shared. If the rubric changes, ADD an axis — never recolour one.

The values are the validated categorical palette, stepped per mode (dark: worst adjacent CVD deltaE 8.4, normal-vision 19.3, all at least 3:1; light: 9.1 / 19.6). In light mode three slots land under 3:1, so the relief rule applies — every axis is ALWAYS directly labelled with its number and a table view exists. Never colour-alone.

VERDICT SLOTS are the reserved status palette, deliberately not drawn from the axis slots so a pass/fail colour can never be mistaken for a skill axis — which is why correctness is blue, not green. They are mode-invariant: defined once under :root and deliberately ABSENT from the dark block, so .dark inherits them and the two can never drift.

Note that shadcn add merges cssVars append-only unless you pass --overwrite. That is the right default for adoption, but it means the CLI will never tell you your values have drifted from ours. If you depend on cross-app comparability, diff against https://ui.hextor.co/r/viz-tokens.json in your own CI.