Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
julianoczkowski avatar

Design Tokens

  • 4.3k installs
  • 481 repo stars
  • Updated July 6, 2026
  • julianoczkowski/designer-skills

A complete set of CSS variables or Tailwind theme values (colors, spacing, typography, motion, breakpoints) for light and dark modes, grounded in a chosen design philosophy.

About

This skill generates a complete design token system for new projects, including semantic color tokens, spacing scales, typography ramps, layout values, motion timing, and responsive breakpoints in light and dark modes. Developers run it after establishing a design brief and philosophy (Dieter Rams, Brutalist, Scandinavian, etc.) but before building any UI components. The skill scans existing token definitions, extends rather than replaces them, and outputs tokens in the format matching the project's tech stack (Tailwind config, CSS custom properties, or theme.ts). Both light and dark palettes are intentionally designed per philosophy, not inverted. Every component built afterward references these tokens instead of hardcoding values. Generates semantic color tokens (bg, text, border, accent, status) with light and dark mode palettes. Builds consistent spacing scales, typography ramps, and layout tokens derived from aesthetic philosophy.

  • Generates semantic color tokens (bg, text, border, accent, status) with light and dark mode palettes
  • Builds consistent spacing scales, typography ramps, and layout tokens derived from aesthetic philosophy
  • Scans codebase for existing tokens; extends rather than replaces CSS variables, Tailwind configs, or theme providers
  • Outputs in format matching tech stack: Tailwind config, CSS custom properties, or CSS-in-JS theme files
  • Supports system preference dark mode via prefers-color-scheme and manual [data-theme] attribute toggle

Design Tokens by the numbers

  • 4,261 all-time installs (skills.sh)
  • +180 installs in the week ending Aug 5, 2026 (Skillselion tracking)
  • Ranked #84 of 1,880 Design & UI/UX skills by installs in the Skillselion catalog
  • Security screen: LOW risk (skills.sh audit)
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
At a glance

design-tokens capabilities & compatibility

Capabilities
generate semantic color tokens with light/dark m · create spacing scales with configurable base uni · build typography ramps (font size, weight, line · define motion tokens (duration, easing curves) · output to tailwind, css variables, or css in js · scan codebase for existing token definitions · extend rather than replace existing systems · support system preference and manual dark mode t
Works with
figma
Use cases
ui design · web design · frontend
Platforms
macOS · Windows · Linux
Runs
Runs locally
Pricing
Free
From the docs

What design-tokens says it does

Generate a design tokens file (CSS variables or Tailwind config) based on a chosen aesthetic philosophy, with light and dark mode palettes, spacing scale, type ramp, and component-level tokens.
skill description
Every component built after this references these tokens instead of hardcoding values.
overview section
npx skills add https://github.com/julianoczkowski/designer-skills --skill design-tokens

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs4.3k
repo stars481
Security audit3 / 3 scanners passed
Last updatedJuly 6, 2026
Repositoryjulianoczkowski/designer-skills

What it does

Generate foundational design tokens (CSS variables or Tailwind config) with color, spacing, typography, and dark mode palettes before building components.

Who is it for?

Establishing visual systems, starting greenfield projects, enforcing design consistency, supporting dark mode, onboarding designers and developers.

Skip if: Migrating legacy hardcoded designs, fixing existing component bugs, creating marketing assets, user research.

When should I use this skill?

Starting a new project, after design brief is finalized, before building first component, when design philosophy is named, when extending existing token system.

What you get

A single source of truth for design values that ensures visual consistency, dark mode support, and faster component development.

  • tokens.css, tailwind.config.js, theme.ts, or theme.json file
  • Light and dark mode token sets
  • Documentation of philosophy and deviations

By the numbers

  • Generates 8-12 spacing scale steps (space-0 to space-12)
  • Covers 5 color categories (bg, text, border, accent, status) with 15-25 semantic tokens
  • Supports 9+ font size steps (xs to 4xl) and 3-4 font weight values

Files

SKILL.mdMarkdownGitHub ↗

This skill generates the foundational design tokens for a project. Run this after the design brief and before building any components. Every component built after this references these tokens instead of hardcoding values.

Example prompts

  • "Set up design tokens for this project"
  • "Generate a token system based on Dieter Rams"
  • "I need a spacing scale and color palette before I start building"
  • "Create tokens that match our brief"

Process

1. Check what already exists. Before generating anything, scan the codebase for:

  • CSS variable definitions (:root, [data-theme], custom property files)
  • Tailwind config (tailwind.config.js, tailwind.config.ts) and any theme extensions
  • Theme provider files (Material UI createTheme, Chakra extendTheme, shadcn globals.css)
  • Design token JSON files (Style Dictionary format, Figma token exports)
  • Any tokens.css, variables.css, theme.css, or similarly named files
  • package.json for UI framework dependencies (tailwindcss, @mui/material, @chakra-ui/react, etc.)

If tokens already exist, extend them rather than replacing. Identify gaps (missing dark mode, incomplete spacing scale, no motion tokens) and fill those.

2. Read the brief. Look for a design brief at .design/*/DESIGN_BRIEF.md. If multiple subfolders exist, use the most recently modified one, or ask the user which feature they are working on. If a philosophy is named, use the parameters from /frontend-design to derive token values. If no brief exists, ask the user what direction they want.

3. Generate tokens in the format that matches the project's tech stack:

  • Tailwind project → extend tailwind.config.js and write to globals.css
  • CSS/HTML project → write to a tokens.css file
  • CSS-in-JS project → write to a theme.ts or theme.js file
  • If unclear, default to CSS custom properties (most portable)

4. Always generate both light and dark mode palettes. Use [data-theme="dark"] or prefers-color-scheme media query. Both palettes should feel intentional for the chosen philosophy, not just inverted values.

Token Categories

Color

/* Semantic color tokens, not raw values */
--color-bg-primary:          /* Main background */
--color-bg-secondary:        /* Secondary/card background */
--color-bg-tertiary:         /* Subtle background (inputs, wells) */
--color-bg-inverse:          /* Inverted background */

--color-text-primary:        /* Main text */
--color-text-secondary:      /* Subdued text */
--color-text-tertiary:       /* Placeholder, disabled text */
--color-text-inverse:        /* Text on inverse backgrounds */
--color-text-link:           /* Link color */

--color-border-primary:      /* Default borders */
--color-border-secondary:    /* Subtle borders */
--color-border-focus:        /* Focus ring color */

--color-accent-primary:      /* Primary action color */
--color-accent-primary-hover:
--color-accent-primary-active:
--color-accent-secondary:    /* Secondary action color */

--color-status-success:
--color-status-warning:
--color-status-error:
--color-status-info:

--color-surface-overlay:     /* Modal/dropdown backdrop */

Spacing

Generate a consistent scale. The base unit should match the philosophy:

  • Tight philosophies (Brutalist, Swiss): 4px base
  • Balanced philosophies (Rams, Scandinavian): 4px or 8px base
  • Spacious philosophies (Japanese Minimalism, Editorial): 8px base with larger multipliers
--space-0:   0;
--space-1:   /* base * 0.25 */
--space-2:   /* base * 0.5 */
--space-3:   /* base * 0.75 */
--space-4:   /* base * 1 */
--space-5:   /* base * 1.5 */
--space-6:   /* base * 2 */
--space-7:   /* base * 3 */
--space-8:   /* base * 4 */
--space-9:   /* base * 6 */
--space-10:  /* base * 8 */
--space-11:  /* base * 12 */
--space-12:  /* base * 16 */

Typography

--font-family-display:       /* Headline/display font */
--font-family-body:          /* Body text font */
--font-family-mono:          /* Code/monospace font */

--font-size-xs:
--font-size-sm:
--font-size-base:
--font-size-md:
--font-size-lg:
--font-size-xl:
--font-size-2xl:
--font-size-3xl:
--font-size-4xl:             /* Hero/display size */

--font-weight-normal:
--font-weight-medium:
--font-weight-semibold:
--font-weight-bold:

--line-height-tight:         /* Headings: 1.1-1.3 */
--line-height-normal:        /* Body: 1.4-1.6 */
--line-height-relaxed:       /* Spacious body: 1.6-1.8 */

--letter-spacing-tight:      /* Display type */
--letter-spacing-normal:
--letter-spacing-wide:       /* All-caps, labels */

Layout

--max-width-content:         /* Max reading width (65-75ch equivalent) */
--max-width-wide:            /* Wide content area */
--max-width-page:            /* Full page max width */

--border-radius-sm:
--border-radius-md:
--border-radius-lg:
--border-radius-full:        /* Pill/circle */

--shadow-sm:
--shadow-md:
--shadow-lg:
--shadow-focus:              /* Focus ring shadow */

Motion

--duration-instant:   50ms;
--duration-fast:      150ms;
--duration-normal:    250ms;
--duration-slow:      400ms;
--duration-slower:    600ms;

--easing-default:     cubic-bezier(0.4, 0, 0.2, 1);
--easing-in:          cubic-bezier(0.4, 0, 1, 1);
--easing-out:         cubic-bezier(0, 0, 0.2, 1);
--easing-bounce:      cubic-bezier(0.34, 1.56, 0.64, 1);

Responsive Breakpoints

--breakpoint-sm:   375px;    /* Mobile */
--breakpoint-md:   768px;    /* Tablet */
--breakpoint-lg:   1024px;   /* Small desktop */
--breakpoint-xl:   1280px;   /* Desktop */
--breakpoint-2xl:  1536px;   /* Wide desktop */

Dark Mode

Always generate dark mode tokens alongside light mode. Rules:

  • Do not simply invert colors. Dark backgrounds should be warm or cool depending on the philosophy.
  • Reduce contrast slightly in dark mode (pure white text on pure black is harsh).
  • Shadows should use darker, more transparent values in dark mode, not the same shadows as light.
  • Accent colors may need lightness adjustments to maintain contrast ratios.
  • Include a prefers-color-scheme media query AND a [data-theme="dark"] attribute selector so the user can support both system preference and manual toggle.
:root {
  /* Light mode tokens */
}

[data-theme="dark"] {
  /* Dark mode overrides */
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    /* System-preference dark mode, unless user explicitly chose light */
  }
}

Output

Save the tokens file in the appropriate location for the project's tech stack. State which philosophy the tokens are derived from and note any deviations or choices made.

Related skills

Forks & variants (1)

Design Tokens has 1 known copy in the catalog totaling 1 installs. They canonicalize to this original listing.

How it compares

Use design-tokens to bootstrap a full token architecture rather than design-review, which evaluates finished UI against a brief.

FAQ

What if tokens already exist in the codebase?

Scan and identify gaps (missing dark mode, incomplete scales), then extend rather than replace. Do not overwrite existing values.

How do I choose a base unit for spacing?

Tight philosophies (Brutalist, Swiss): 4px base. Balanced (Rams, Scandinavian): 4-8px. Spacious (Japanese Minimalism): 8px with larger multipliers.

Should dark mode colors be inverted?

No. Dark backgrounds should be warm or cool per philosophy. Reduce contrast, adjust shadows, maintain WCAG ratios on accents.

Is Design Tokens safe to install?

skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.

Design & UI/UXuibranding

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.