PluginBench
Skill
Pass
Audit score 90

design-system

nextlevelbuilder/ui-ux-pro-max-skill

Three-layer token architecture, component specs, and brand-compliant slide generation for design systems.

What is design-system?

Manages design tokens across primitive, semantic, and component layers, enabling CSS variable systems and systematic design. Generates component specifications, spacing/typography scales, and creates strategic presentations using design tokens and Chart.js. Use for design-to-code handoff, Tailwind configuration, and brand-compliant slide decks.

  • Three-layer token architecture (primitive→semantic→component) with CSS variables
  • Component state definitions with property variants (default, hover, active, disabled)
  • Token generation and validation scripts for JSON-to-CSS conversion
  • Spacing and typography scale management
  • Design token-driven slide generation with BM25 search and contextual decision system
  • Chart.js integration for data visualization in presentations

How to install design-system

npx skills add https://github.com/nextlevelbuilder/ui-ux-pro-max-skill --skill design-system
Prerequisites
  • Node.js for running token generation and validation scripts
  • Python for slide search and validation utilities
  • Existing brand guidelines or color/typography definitions
  • JSON token configuration file (starter template provided)
Claude Code
Cursor
Windsurf
Cline

How to use design-system

  1. 1.Load token architecture reference from references/token-architecture.md
  2. 2.Create or configure tokens.json using design-tokens-starter.json template
  3. 3.Run `node scripts/generate-tokens.cjs --config tokens.json -o tokens.css` to generate CSS variables
  4. 4.Validate token usage in codebase with `node scripts/validate-tokens.cjs --dir src/`
  5. 5.For slides: use `python scripts/search-slides.py` to find relevant slide templates by goal or emotion
  6. 6.Generate slide HTML ensuring it imports design-tokens.css and uses var() for all styling
  7. 7.Validate slide compliance with `node scripts/slide-token-validator.py`
  8. 8.Integrate generated tokens with Tailwind or component systems via semantic layer

Use cases

Good for
  • Creating a design token system for a multi-product design system
  • Generating component specifications with state variants for developer handoff
  • Building brand-compliant investor pitch decks with token-driven styling
  • Validating hardcoded values in code and enforcing token usage
  • Configuring Tailwind theme from semantic and component tokens
Who it's for
  • UI/UX designers building design systems
  • Frontend developers implementing token-based styling
  • Design system maintainers
  • Product teams creating brand-compliant presentations
  • Teams doing design-to-code handoff

design-system FAQ

What is the three-layer token structure?

Primitive tokens are raw values (e.g., --color-blue-600: #2563EB). Semantic tokens alias primitives by purpose (e.g., --color-primary references --color-blue-600). Component tokens are component-specific (e.g., --button-bg references --color-primary). This enables theme switching and systematic design.

How do I generate CSS variables from tokens?

Create a tokens.json file using the design-tokens-starter.json template, then run `node scripts/generate-tokens.cjs --config tokens.json -o tokens.css`. This outputs a CSS file with all three layers as CSS variables.

Can I use this with Tailwind?

Yes. The skill includes Tailwind integration guidance. Component tokens can be mapped to Tailwind theme configuration for consistent styling across your project.

How does the slide generation system work?

Use `python scripts/search-slides.py` with a goal or emotion. The system queries decision CSVs (strategies, layouts, typography, colors, backgrounds) and generates HTML slides that import design-tokens.css and use Chart.js for charts.

What validation tools are included?

Two validators: `validate-tokens.cjs` checks for hardcoded color/font values in code, and `slide-token-validator.py` ensures slide HTML uses CSS variables instead of hardcoded values.

Full instructions (SKILL.md)

Source of truth, from nextlevelbuilder/ui-ux-pro-max-skill.


name: design-system description: Token architecture, component specifications, and slide generation. Three-layer tokens (primitive→semantic→component), CSS variables, spacing/typography scales, component specs, strategic slide creation. Use for design tokens, systematic design, brand-compliant presentations. argument-hint: "[component or token]" license: MIT metadata: author: claudekit version: "1.0.0"

Design System

Token architecture, component specifications, systematic design, slide generation.

When to Use

  • Design token creation
  • Component state definitions
  • CSS variable systems
  • Spacing/typography scales
  • Design-to-code handoff
  • Tailwind theme configuration
  • Slide/presentation generation

Token Architecture

Load: references/token-architecture.md

Three-Layer Structure

Primitive (raw values)
       ↓
Semantic (purpose aliases)
       ↓
Component (component-specific)

Example:

/* Primitive */
--color-blue-600: #2563EB;

/* Semantic */
--color-primary: var(--color-blue-600);

/* Component */
--button-bg: var(--color-primary);

Quick Start

Generate tokens:

node scripts/generate-tokens.cjs --config tokens.json -o tokens.css

Validate usage:

node scripts/validate-tokens.cjs --dir src/

References

TopicFile
Token Architecturereferences/token-architecture.md
Primitive Tokensreferences/primitive-tokens.md
Semantic Tokensreferences/semantic-tokens.md
Component Tokensreferences/component-tokens.md
Component Specsreferences/component-specs.md
States & Variantsreferences/states-and-variants.md
Tailwind Integrationreferences/tailwind-integration.md

Component Spec Pattern

PropertyDefaultHoverActiveDisabled
Backgroundprimaryprimary-darkprimary-darkermuted
Textwhitewhitewhitemuted-fg
Bordernonenonenonemuted-border
Shadowsmmdnonenone

Scripts

ScriptPurpose
generate-tokens.cjsGenerate CSS from JSON token config
validate-tokens.cjsCheck for hardcoded values in code
search-slides.pyBM25 search + contextual recommendations
slide-token-validator.pyValidate slide HTML for token compliance
fetch-background.pyFetch images from Pexels/Unsplash

Templates

TemplatePurpose
design-tokens-starter.jsonStarter JSON with three-layer structure

Integration

With brand: Extract primitives from brand colors/typography With ui-styling: Component tokens → Tailwind config

Skill Dependencies: brand, ui-styling Primary Agents: ui-ux-designer, frontend-developer

Slide System

Brand-compliant presentations using design tokens + Chart.js + contextual decision system.

Source of Truth

FilePurpose
docs/brand-guidelines.mdBrand identity, voice, colors
assets/design-tokens.jsonToken definitions (primitive→semantic→component)
assets/design-tokens.cssCSS variables (import in slides)
assets/css/slide-animations.cssCSS animation library

Slide Search (BM25)

# Basic search (auto-detect domain)
python scripts/search-slides.py "investor pitch"

# Domain-specific search
python scripts/search-slides.py "problem agitation" -d copy
python scripts/search-slides.py "revenue growth" -d chart

# Contextual search (Premium System)
python scripts/search-slides.py "problem slide" --context --position 2 --total 9
python scripts/search-slides.py "cta" --context --position 9 --prev-emotion frustration

Decision System CSVs

FilePurpose
data/slide-strategies.csv15 deck structures + emotion arcs + sparkline beats
data/slide-layouts.csv25 layouts + component variants + animations
data/slide-layout-logic.csvGoal → Layout + break_pattern flag
data/slide-typography.csvContent type → Typography scale
data/slide-color-logic.csvEmotion → Color treatment
data/slide-backgrounds.csvSlide type → Image category (Pexels/Unsplash)
data/slide-copy.csv25 copywriting formulas (PAS, AIDA, FAB)
data/slide-charts.csv25 chart types with Chart.js config

Contextual Decision Flow

1. Parse goal/context
        ↓
2. Search slide-strategies.csv → Get strategy + emotion beats
        ↓
3. For each slide:
   a. Query slide-layout-logic.csv → layout + break_pattern
   b. Query slide-typography.csv → type scale
   c. Query slide-color-logic.csv → color treatment
   d. Query slide-backgrounds.csv → image if needed
   e. Apply animation class from slide-animations.css
        ↓
4. Generate HTML with design tokens
        ↓
5. Validate with slide-token-validator.py

Pattern Breaking (Duarte Sparkline)

Premium decks alternate between emotions for engagement:

"What Is" (frustration) ↔ "What Could Be" (hope)

System calculates pattern breaks at 1/3 and 2/3 positions.

Slide Requirements

ALL slides MUST:

  1. Import assets/design-tokens.css - single source of truth
  2. Use CSS variables: var(--color-primary), var(--slide-bg), etc.
  3. Use Chart.js for charts (NOT CSS-only bars)
  4. Include navigation (keyboard arrows, click, progress bar)
  5. Center align content
  6. Focus on persuasion/conversion

Chart.js Integration

<script src="https://cdn.jsdelivr.net/npm/chart.js@4.4.1/dist/chart.umd.min.js"></script>

<canvas id="revenueChart"></canvas>
<script>
new Chart(document.getElementById('revenueChart'), {
    type: 'line',
    data: {
        labels: ['Sep', 'Oct', 'Nov', 'Dec'],
        datasets: [{
            data: [5, 12, 28, 45],
            borderColor: '#FF6B6B',  // Use brand coral
            backgroundColor: 'rgba(255, 107, 107, 0.1)',
            fill: true,
            tension: 0.4
        }]
    }
});
</script>

Token Compliance

/* CORRECT - uses token */
background: var(--slide-bg);
color: var(--color-primary);
font-family: var(--typography-font-heading);

/* WRONG - hardcoded */
background: #0D0D0D;
color: #FF6B6B;
font-family: 'Space Grotesk';

Reference Implementation

Working example with all features:

assets/designs/slides/claudekit-pitch-251223.html

Command

/slides:create "10-slide investor pitch for ClaudeKit Marketing"

Best Practices

  1. Never use raw hex in components - always reference tokens
  2. Semantic layer enables theme switching (light/dark)
  3. Component tokens enable per-component customization
  4. Use HSL format for opacity control
  5. Document every token's purpose
  6. Slides must import design-tokens.css and use var() exclusively