From claude-superskills
Builds, maintains, and migrates design systems using three-layer token architecture (primitive, semantic, component), CSS variables, spacing/typography scales, component specs, and brand-compliant slides.
npx claudepluginhub ericgandrade/claude-superskills --plugin claude-superskillsThis skill uses the workspace's default tool permissions.
Token architecture, component specifications, systematic design, slide generation.
README.mddata/slide-backgrounds.csvdata/slide-charts.csvdata/slide-color-logic.csvdata/slide-copy.csvdata/slide-layout-logic.csvdata/slide-layouts.csvdata/slide-strategies.csvdata/slide-typography.csvevals/evals.jsonevals/trigger-eval.jsonreferences/component-specs.mdreferences/component-tokens.mdreferences/primitive-tokens.mdreferences/semantic-tokens.mdreferences/states-and-variants.mdreferences/tailwind-integration.mdreferences/token-architecture.mdscripts/embed-tokens.cjsscripts/fetch-background.pyBuilds scalable design systems using token hierarchies, semantic tokens, component APIs, theme switching, and documentation. For component libraries and UI foundations.
Builds scalable design systems with design tokens, atomic design, Storybook, theming, and governance. Use for component libraries, design standards, and unifying product experiences.
Generates design systems with tokens, atomic components, WCAG accessibility, theming, and docs. Provides React templates for consistent, scalable UI.
Share bugs, ideas, or general feedback.
Token architecture, component specifications, systematic design, slide generation.
Load: references/token-architecture.md
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);
Generate tokens:
node scripts/generate-tokens.cjs --config tokens.json -o tokens.css
Validate usage:
node scripts/validate-tokens.cjs --dir src/
| Topic | File |
|---|---|
| Token Architecture | references/token-architecture.md |
| Primitive Tokens | references/primitive-tokens.md |
| Semantic Tokens | references/semantic-tokens.md |
| Component Tokens | references/component-tokens.md |
| Component Specs | references/component-specs.md |
| States & Variants | references/states-and-variants.md |
| Tailwind Integration | references/tailwind-integration.md |
| Property | Default | Hover | Active | Disabled |
|---|---|---|---|---|
| Background | primary | primary-dark | primary-darker | muted |
| Text | white | white | white | muted-fg |
| Border | none | none | none | muted-border |
| Shadow | sm | md | none | none |
| Script | Purpose |
|---|---|
generate-tokens.cjs | Generate CSS from JSON token config |
validate-tokens.cjs | Check for hardcoded values in code |
search-slides.py | BM25 search + contextual recommendations |
slide-token-validator.py | Validate slide HTML for token compliance |
fetch-background.py | Fetch images from Pexels/Unsplash |
| Template | Purpose |
|---|---|
design-tokens-starter.json | Starter JSON with three-layer structure |
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
Brand-compliant presentations using design tokens + Chart.js + contextual decision system.
| File | Purpose |
|---|---|
docs/brand-guidelines.md | Brand identity, voice, colors |
assets/design-tokens.json | Token definitions (primitive→semantic→component) |
assets/design-tokens.css | CSS variables (import in slides) |
assets/css/slide-animations.css | CSS animation library |
# 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
| File | Purpose |
|---|---|
data/slide-strategies.csv | 15 deck structures + emotion arcs + sparkline beats |
data/slide-layouts.csv | 25 layouts + component variants + animations |
data/slide-layout-logic.csv | Goal → Layout + break_pattern flag |
data/slide-typography.csv | Content type → Typography scale |
data/slide-color-logic.csv | Emotion → Color treatment |
data/slide-backgrounds.csv | Slide type → Image category (Pexels/Unsplash) |
data/slide-copy.csv | 25 copywriting formulas (PAS, AIDA, FAB) |
data/slide-charts.csv | 25 chart types with Chart.js config |
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
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.
ALL slides MUST:
assets/design-tokens.css - single source of truthvar(--color-primary), var(--slide-bg), etc.<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>
/* 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';
Working example with all features:
assets/designs/slides/claudekit-pitch-251223.html
/slides:create "10-slide investor pitch for ClaudeKit Marketing"