Quick switch
Click a preset to re‑skin the live demo below. The same buttons, inputs, badges, and stat cards — different palette and radius. Each preset is one CSS module load.
Three layers of override
Every kit component participates in a layered cascade. Override at whichever level fits.
1. Global semantic tokens
Set on :root. Cascade through Shadow DOM into every
component. This is the layer the four presets configure.
2. Per-component tokens
Each component exposes finer-grained hooks like
--tc-btn-primary-bg,
--tc-input-border,
--tc-table-row-hover. They default to the global
semantic tokens but can be overridden per‑component:
3. Per-instance overrides
Pass the variable as inline style. Affects only that one element.
Bundled presets
Pick one. They're all idempotent — importing twice is a no‑op.
| Preset | Import | What it changes |
|---|---|---|
| tokens (default) | @ra9/tan-compose-kit/themes/tokens |
Light theme, warm-tan accent. The base every other preset extends. |
| dark | @ra9/tan-compose-kit/themes/dark |
Dark surface + ink, accent brightened for contrast. |
| bootstrap | @ra9/tan-compose-kit/themes/bootstrap |
Bootstrap 5 primary blue, semantic palette, default radius. |
| tailwind | @ra9/tan-compose-kit/themes/tailwind |
Tailwind slate/indigo palette, default radius scale. |
| material | @ra9/tan-compose-kit/themes/material |
Material Design 3 indigo, Roboto, elevation-style shadows. |
| shadcn | @ra9/tan-compose-kit/themes/shadcn |
shadcn/ui zinc neutrals, tighter radii, Inter typography. |
Using alongside Bootstrap or Tailwind
Bootstrap
Tailwind
Other frameworks
Bulma, Bootstrap 4, plain CSS — same shape. Override the
handful of --tc-color-* tokens to match the
framework's brand color and you're done.
Writing your own preset
Just CSS. Set the tokens you want to change; the rest cascade from the base.
Load that file after the kit's base tokens and every component updates.
The full token list
See Docs for the complete catalogue, but the most-used:
--tc-color-accent/-hover/-soft— primary brand color and its derivatives--tc-color-ink/-soft/-muted— three steps of text emphasis--tc-color-surface/-alt— background surfaces--tc-color-rule/-strong— borders and dividers--tc-color-{info,success,warning,danger}+ matching-bgand-fg--tc-radius-{sm,md,lg,pill}--tc-shadow-{sm,md,lg}--tc-space-{1..8}— spacing scale used by layout primitives--tc-focus-ring— single source of truth for focus outlines--tc-font-{sans,mono}