Design tokens
A design token is a named value that represents a design decision. Instead of hardcoding#36AA08 in your components, you use a token like color.brand.primary that resolves to the right value for each platform and theme.
Humic stores tokens with a dot-notation key (e.g., spacing.page.gutter) and a type that determines how the value is structured and exported.
Token types
Humic supports 14 token types:How color tokens work
Color tokens don’t store raw hex values. Instead, they reference a color scale and a step within that scale. This means changing a scale automatically updates every token that references it. A color token stores:- Scale — which color scale (e.g.,
brand,neutral) - Step — which step in the light scale (e.g.,
500) - Dark step — optionally, a different step for dark mode
Color scales
A color scale is a named palette with numbered steps. Each step has a light and dark hex value, giving you automatic dark mode support.Primitives
Primitives are the raw foundation values of your design system — the base spacing scale, font sizes, border radii, and other numeric values that tokens can reference. Think of primitives as your system’s building blocks:
Tokens can reference primitives instead of storing literal values. When you update a primitive, every token that references it updates automatically.
Design systems
A design system is a collection of tokens, color scales, and primitives. One organization can have multiple design systems — for example, abrand system for the marketing site and a product system for the app.
Visibility
Each design system has a visibility setting that controls who can access it:Roles
Access is controlled at two levels: Organization level:- Admin — full access, manages members and billing
- Member — sees public and request-access design systems
- Editor — create and edit tokens, manage API keys (paid seat)
- Viewer — read and export only (free)
- Guest — same as viewer, but without org-level visibility
Export
Humic stores token values in a platform-agnostic format. The export layer transforms them into the format you need:- CSS — Custom properties with light/dark mode support
- JSON — W3C Design Tokens Community Group format
- Tailwind — Theme configuration for
tailwind.config.ts - Figma — Variables API format with collections and modes
- TypeScript — Typed constant with autocomplete support

