home / skills / thienanblog / awesome-ai-agent-skills / design-system-generator

design-system-generator skill

/skills/design-system-generator

npx playbooks add skill thienanblog/awesome-ai-agent-skills --skill design-system-generator

Review the files below or copy the command above to add this skill to your agents.

Files (7)
SKILL.md
6.5 KB
---
name: design-system-generator
description: Generate a project-specific DESIGN_SYSTEM.md that enforces consistent UI/UX across SPAs, traditional server-rendered sites, and hybrid systems. Includes tokens, component rules, accessibility gates, and production asset/manifest guidance.
author: Official
---

# Design System Generator

## Overview

This skill generates a project-specific **`DESIGN_SYSTEM.md`** that enforces consistent UI/UX across:
- SPAs (React/Vue/Svelte/Angular)
- Traditional server-rendered sites (Laravel, Rails, Django, WordPress, etc.)
- Hybrid systems (admin + marketing + docs)

The design system must be **component-based**, portable, and practical for real implementation.

**When to use this skill:**
- Setting up UI consistency rules for a new project
- Standardizing component patterns across teams
- Establishing design tokens (colors, typography, spacing)
- Defining accessibility and performance requirements

## Interactive Workflow

### Required Questions

Ask these questions before generating the document:

```
1. Project type: SPA / Traditional / Hybrid

2. Primary framework(s): React/Vue/Svelte/Angular/None + backend/framework

3. Existing UI/template/design system already in use? (yes/no)

4. CSS approach preference:
   a) Tailwind/utility-first
   b) SCSS/SASS
   c) CSS Modules
   d) styled-components/emotion
   e) Component library (MUI/Ant/etc.)

5. Do you need light mode only, light+dark, or multi-theme?

6. Accessibility target (recommend WCAG AA) and keyboard support expectations

7. Browser/device support constraints

8. i18n/RTL requirements (if any)

9. Do you want design tokens exported? (CSS vars / JSON / both)

Reply examples:
- Short: `1a 2b 3no 4a 5b 6aa 7modern 8no 9both`
- Detailed: `SPA with Vue 3, no existing design system, using Tailwind, light+dark theme, WCAG AA, modern browsers only, no RTL, export both CSS vars and JSON`
```

### Optional Questions (ask only if relevant)

- Figma link or brand guide?
- Multi-tenant theming?
- Mobile app alignment?

## Decision Policy

### Rule 1: Prefer existing stack
If the project already uses a template or styling system, adapt to it.

### Rule 2: Choose one best-fit direction
Do not provide 3-5 "options" unless the user requests comparison. Pick one approach and commit.

### Safe Defaults

- **React SPA**: TailwindCSS + shadcn/ui (Radix primitives) + CSS variables tokens
- **Vue SPA**: TailwindCSS + headless components + CSS variables tokens
- **Angular**: Angular Material OR Tailwind + CDK (based on preference)
- **Traditional**: SCSS or PostCSS layered architecture (tokens/base/components/utilities), optional bundler

## Output Files

### Primary
- `DESIGN_SYSTEM.md`

### Optional (only if user wants)
- `design-tokens.json`
- `tokens.css`
- Sample component snippets

## Non-Negotiables (must appear in DESIGN_SYSTEM.md)

### Accessibility
- Visible focus states
- Keyboard navigation for interactive elements
- Contrast targets (WCAG AA recommended)
- Reduced motion support
- Semantic HTML first; ARIA only when necessary

### Performance / Production
- Hashed asset filenames + manifest mapping (cache busting)
- Minify CSS/JS for production
- Image optimization pipeline (including SVG optimization)
- Font loading strategy (`font-display: swap`, limit weights)

## Document Style

`DESIGN_SYSTEM.md` is a **team artifact**:
- Do not mention "AI", "assistant", "model", or "prompt"
- Use clear "Do/Don't" guidance
- Keep readable in ~10-15 minutes

## DESIGN_SYSTEM.md Required Structure

Generate a tailored document using this structure:

1. **Scope**
2. **Design principles** (3-5 bullet max)
3. **Supported platforms & constraints**
4. **Design tokens**
   - Color system
   - Typography
   - Spacing/layout
   - Radius/borders/shadows
   - Motion
5. **UI foundations**
   - Base styles/reset
   - Focus/interaction states
   - Iconography
6. **Component architecture**
   - Portability across SPA + Traditional
   - Naming + folder conventions
   - Required states (hover/focus/disabled/loading/error)
7. **Component inventory** (minimum viable list)
8. **CSS strategy & tooling**
   - SPA path vs Traditional path
9. **Production build & asset strategy**
   - dist structure
   - Manifest requirement
   - Optimization checklist
10. **Accessibility checklist** (ship gate)
11. **Examples** (token usage + one component example)

## SPA vs Traditional Guidance

### SPA guidance must include:
- Recommended bundler (Vite/Webpack/Rollup) aligned with stack
- CSS strategy (Tailwind/CSS Modules/SCSS)
- Component library decision (if any)
- Theming mechanism (CSS variables recommended)

### Traditional guidance must include:
- SCSS/PostCSS architecture:
  - tokens layer
  - base layer
  - components layer
  - utilities layer
- Recommendation for bundling (optional but encouraged)
- Manifest strategy so server templates reference hashed assets

## Required Manifest Guidance (Cache Busting)

Include an explicit section stating:
- Build output must produce a manifest mapping logical asset names to hashed filenames
- Server must read manifest to include assets
- Avoid stale browser caches in production

## Agent-Doc Patch Snippet (Required Output)

After generating `DESIGN_SYSTEM.md`, also output a short patch snippet to add to `AGENTS.md` and/or `CLAUDE.md`:

```markdown
## Design System
All UI components and pages must follow `DESIGN_SYSTEM.md`:
- Use design tokens (no hardcoded colors/sizes).
- Implement component states (hover/focus/disabled/loading/error).
- Meet accessibility and performance requirements.
```

## Reference Files

Before generating `DESIGN_SYSTEM.md`, read these reference files:

- **Template**: `TEMPLATE_DESIGN_SYSTEM.md` - Use this as the base structure for generation
- **Example CSS tokens**: `examples/tokens.css` - Reference for CSS variable token format
- **Example JSON tokens**: `examples/design-tokens.json` - Reference for JSON token export format
- **Example manifest**: `examples/manifest.example.json` - Reference for asset manifest structure
- **AGENTS.md patch**: `examples/AGENTS.patch.md` - The exact snippet to add to AGENTS.md/CLAUDE.md

## Acceptance Criteria

- `DESIGN_SYSTEM.md` is tailored to the user's stack and constraints
- Contains token rules, component state rules, accessibility gates, and production/manifest rules
- Avoids "AI" language entirely in the generated docs
- Recommends a single coherent approach (unless user asked for alternatives)
- Includes an `AGENTS.md` / `CLAUDE.md` patch snippet referencing `DESIGN_SYSTEM.md`

---

*This skill is part of the awesome-ai-agent-skills community library.*