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 token architecture (primitive→semantic→component), CSS variable systems, component specifications, and strategic slide/presentation generation. Use this to establish a systematic design foundation, enable design-to-code handoff, and create brand-compliant presentations with Chart.js integration.

  • Generate CSS variables from JSON token configs with three-layer token structure (primitive, semantic, component)
  • Validate token usage across codebases to prevent hardcoded values
  • Create component specifications with state variants (hover, active, disabled)
  • Generate brand-compliant presentations with contextual slide selection, Chart.js charts, and design-token compliance
  • Search and recommend slides using BM25 with emotion-arc and pattern-breaking logic
  • Integrate with Tailwind theme configuration and design-to-code workflows

How to install design-system

npx skills add https://github.com/nextlevelbuilder/ui-ux-pro-max-skill --skill design-system
Prerequisites
  • Node.js (for token generation and validation scripts)
  • Python 3 (for slide search and validation scripts)
  • JSON token configuration file (starter template provided)
  • Brand guidelines document (docs/brand-guidelines.md)
Claude Code
Cursor
Windsurf
Cline

How to use design-system

  1. 1.Create or load a token configuration in JSON format using the three-layer structure (primitive→semantic→component)
  2. 2.Run `node scripts/generate-tokens.cjs --config tokens.json -o tokens.css` to generate CSS variables
  3. 3.Validate token usage in your codebase with `node scripts/validate-tokens.cjs --dir src/`
  4. 4.Define component specifications using the provided pattern (property, default, hover, active, disabled states)
  5. 5.For slides: search available slide templates with `python scripts/search-slides.py "your-goal"` with optional domain and context flags
  6. 6.Generate presentation HTML that imports `assets/design-tokens.css` and uses `var()` for all styling, then validate with `slide-token-validator.py`

Use cases

Good for
  • Building a scalable design token system for multi-product design systems
  • Creating component state specifications for design-to-dev handoff
  • Generating investor pitch decks with brand-compliant layouts and charts
  • Validating that production code uses design tokens instead of hardcoded colors
  • Setting up Tailwind configuration from semantic and component token layers
Who it's for
  • Design system managers
  • UI/UX designers building systematic design
  • Frontend developers implementing token-based styling
  • Product teams creating brand-compliant presentations
  • Teams using Tailwind CSS with token-driven theming

design-system FAQ

What is the three-layer token structure?

Primitive tokens are raw values (e.g., `--color-blue-600: #2563EB`), semantic tokens are purpose aliases (e.g., `--color-primary: var(--color-blue-600)`), and component tokens are component-specific (e.g., `--button-bg: var(--color-primary)`). This enables theme switching and systematic design.

Can I use this with Tailwind CSS?

Yes. The skill includes Tailwind integration via `references/tailwind-integration.md` and can generate a Tailwind theme config from your semantic and component token layers.

How does the slide generation work?

The skill uses BM25 search to find relevant slide templates, then applies contextual decision logic (emotion arcs, pattern breaks, typography scales, color treatments) from CSV decision tables. All slides must import design-tokens.css and use CSS variables exclusively.

What if I want to generate slides with charts?

Use Chart.js (included via CDN). The skill provides chart type recommendations from `data/slide-charts.csv` and validates that chart colors use design tokens, not hardcoded hex values.

How do I ensure my slides stay brand-compliant?

All slides must import `assets/design-tokens.css`, use CSS variables for colors/typography/spacing, and pass validation with `slide-token-validator.py`. The skill enforces this via the token compliance rules.

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);

Script Paths

Script paths in this skill and its references/ are relative to the directory that contains this SKILL.md, not to the project: scripts/<file> is this skill's own scripts/ folder, and ../<skill>/scripts/<file> is a sibling sub-skill installed alongside it. Build the full path from that directory (Claude Code reports it as the skill's base directory when the skill loads) and keep the working directory at the project root — the scripts read and write project files such as docs/brand-guidelines.md, assets/design-tokens.json or src/ relative to it.

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