1. Components
  2. theme

Theming tokens

Foundation of JK-ui’s design system: semantic tokens for colors, surfaces, borders, typography, spacing, and radii to ensure visual consistency.

Colors

We've opted for semantic naming approche, so we have color's name as primary, secondary, etc…
ColorDescription
primary
The main brand color used for core actions and key UI elements such as primary buttons, links, and active states.
secondary
A supporting brand color used for secondary actions, complementary UI elements, or to provide visual hierarchy alongside the primary color.
accent
A highlight color used sparingly to draw attention to specific elements like badges, highlights, or special interactions.
info
Used to communicate neutral or informative messages, such as tips, hints, or informational alerts.
success
Indicates successful actions or positive states, such as confirmations, completed tasks, or valid inputs.
warning
Signals caution or potential issues that require user attention but are not critical errors.
danger
Represents destructive actions, errors, or critical states that may cause data loss or irreversible changes.
gray
A neutral color scale used for backgrounds, borders, text, disabled states, and non-emphasized UI elements.

Background

Background tokens define surfaces and layers. Use Tailwind utilities like bg-bg, bg-bg-muted, bg-card, bg-card-gray.
TokenDescription
--bgDefault app background.
--bg-subtleSubtle background to separate sections.
--bg-surfaceElevated or surface layers (panels, sheets).
--bg-mutedMuted background for less emphasis.
--cardCard background.
--card-grayNeutral/gray variant for cards.
--popoverPopover/tooltip background.
--popover-grayNeutral/gray variant for popovers.
--overlayOverlays and scrims (modals, drawers).

Foreground

Foreground tokens define text and icon colors. Use text-fg, text-fg-title, text-fg-subtitle, text-fg-muted.
TokenDescription
--fgDefault foreground for body text and icons.
--fg-titleHigh-emphasis titles and headings.
--fg-subtitleSecondary headings and labels.
--fg-mutedMuted/tertiary text, placeholders, help text.

Border

Border tokens control outlines and separators. Use border-border, border-border-strong and opacity variants like border-border/40.
TokenDescription
--borderDefault border color for components.
--border-strongStronger emphasis borders and outlines.
--border-subtleSubtle dividers and separators.
--border-cardCard borders.
--border-inputInput and form control borders.

Border radius

VariableDescription
--radius-uiDefault border radius for components.

Others