Skip to content
cccskills
FreePublished on GitHub

frontend

Design UI, build components, write Playwright E2E tests, run WCAG accessibility audits, and do visual review. Use when building or testing frontend/UI work. Trigger on "build a component", "frontend", "E2E test", "accessibility audit", "a11y", "visual review", "make this look good".

The English summary is being prepared. Showing the original description.

See how to install

Files included (62)

  • SKILL.md11.2 KB
  • design-references/color-palettes/gradients-patterns.md5.6 KB
  • design-references/color-palettes/ide-themes.json8.7 KB
  • design-references/motion-patterns/css-animations.json8.3 KB
  • design-references/motion-patterns/framer-motion-variants.md5.5 KB
  • design-references/spatial-compositions/asymmetry-guide.md4.9 KB
  • design-references/spatial-compositions/layout-patterns.json11.5 KB
  • design-references/typography/anti-patterns.md3.3 KB
  • design-references/typography/font-pairings.json5.8 KB
  • design-references/typography/size-scales.md2.8 KB
  • design-references/typography/weight-scales.json5.6 KB
  • design-systems/custom-test-design-system/metadata.json226 B
  • design-systems/custom-test-design-system/tokens.json788 B
  • prompts/aesthetics-base.md6.4 KB
  • prompts/anti-patterns.md11.3 KB
  • prompts/design-thinking.md12.0 KB
  • prompts/litmus-checks.md3.2 KB
  • prompts/motion.md8.4 KB
  • prompts/typography.md6.6 KB
  • README.md7.7 KB
  • scripts/design-lint.sh3.7 KB
  • sub-skills/backgrounds.md7.4 KB
  • sub-skills/color-theme.md5.7 KB
  • sub-skills/css-scss.md5.0 KB
  • sub-skills/design-thinking.md5.2 KB
  • sub-skills/htmx.md4.4 KB
  • sub-skills/hugo.md5.4 KB
  • sub-skills/imagery.md3.2 KB
  • sub-skills/jinja2.md4.6 KB
  • sub-skills/material-design.md4.6 KB
  • sub-skills/motion.md7.9 KB
  • sub-skills/page-composition.md4.7 KB
  • sub-skills/radix-ui.md4.3 KB
  • sub-skills/react-vite.md4.3 KB
  • sub-skills/sass.md5.6 KB
  • sub-skills/shadcn-ui.md3.7 KB
  • sub-skills/spatial.md7.0 KB
  • sub-skills/tailwind.md3.3 KB
  • sub-skills/typescript.md5.5 KB
  • sub-skills/typography.md4.7 KB
  • sub-skills/ui-polish.md11.6 KB
  • templates/a11y/accessibility-report.md3.5 KB
  • templates/a11y/wcag-checklist.md11.4 KB
  • templates/component-scaffold.md3.5 KB
  • templates/e2e/api-mocking.ts5.8 KB
  • templates/e2e/auth-setup.ts3.4 KB
  • templates/e2e/custom-fixtures.ts2.7 KB
  • templates/e2e/page-object-model.ts3.7 KB
  • templates/e2e/playwright-config.ts1.2 KB
  • templates/e2e/responsive-tests.ts3.7 KB
  • templates/e2e/visual-regression.ts4.3 KB
  • tests/test-design-lint/fixtures/clean.css393 B
  • tests/test-design-lint/fixtures/violations.css262 B
  • tests/test-design-lint/fixtures/violations.tsx256 B
  • tests/test-design-lint/test-lint.sh2.7 KB
  • tools/design_system_fetcher/__init__.py654 B
  • tools/design_system_fetcher/__main__.py182 B
  • tools/design_system_fetcher/fetcher.py5.4 KB
  • tools/design_system_fetcher/main.py7.9 KB
  • tools/design_system_fetcher/README.md6.1 KB
  • tools/design_system_fetcher/storage.py10.4 KB
  • tools/design_system_fetcher/token_extractor.py9.5 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Frontend — Design, Build & Verify

Unified frontend skill for visual design, component creation, E2E testing, accessibility audits, and visual review. Composes five design dimensions with tech-specific implementations.

Usage

/frontend                        # Show dimensions, suggest next action
/frontend design                 # 6 design dimensions + 9-phase workflow
/frontend component <name>       # Create UI component with variants, tests, preview
/frontend e2e                    # Write Playwright E2E tests (page object model)
/frontend a11y                   # WCAG 2.1 AA accessibility audit
/frontend review                 # Gemini visual review (screenshot + code)
/frontend verify                 # Quick verification decision tree

Workflow

Step 1: Determine Mode

Parse $ARGUMENTS for explicit subcommand. If no arguments:

  1. Check for recent frontend file changes (*.html, *.css, *.ts, *.tsx, *.jinja2, *.scss)
  2. If changes found → suggest /frontend verify
  3. If new project → suggest /frontend design
  4. Otherwise → show all modes

Step 1.5: Load Design System

Before routing to any subcommand, check for a persistent design system file:

  1. Look for .design/system.md in the project root (search from CWD upward, stop at git root)
  2. If found: read it and announce → Design system loaded: [list the Mode + Typography + Color + Depth values]
  3. Treat the loaded values as hard constraints throughout the session — do not contradict them without explicitly noting you're changing a decision and logging it

On /frontend design Phase 1 completion:

  • Create .design/system.md if it does not exist (use the Design Brief output as seed)
  • If it exists: update only the fields changed in this session; preserve existing Decisions Log entries
  • Note: .design/system.md should be committed to version control (it is a project artifact)

After each design phase (typography, color, spatial, etc.):

  • Update the corresponding section in .design/system.md with the decisions made

Step 1b: Detect Design Mode

Determine whether this is a brand or product context. Detection priority:

  1. .design/system.md ## Mode field — use it if present
  2. Explicit user statement ("build a landing page", "build a dashboard")
  3. Project signals — scan for: /app/, /dashboard/, /admin/ routes; auth middleware; data table components → product. Hero sections, CTA buttons, marketing copy, no auth → brand
  4. If ambiguous: ask — "Is this a brand/marketing page or a product/app UI?"

Brand mode — marketing pages, landing pages, portfolios, editorial. Prioritize: personality, differentiation, emotional impact, dramatic hierarchy.

Product mode — dashboards, app UI, admin panels, tools. Prioritize: clarity, information density, consistency, functional hierarchy.

Record the detected mode in .design/system.md ## Mode field.

Step 2: Route to Subcommand


/frontend design — Visual Design

The 6 Design Dimensions:

  1. Typography — Typeface selection, font pairings, weights, sizing, hierarchy
  2. Color & Theme — Emotional intent, color systems, unexpected accents
  3. Motion — Orchestrated animations, easing, interaction choreography
  4. Spatial Composition — Layout, spacing systems, asymmetrical design
  5. Backgrounds & Details — Subtle textures, gradients, visual rewards
  6. UI Polish — Micro-details: text wrapping, concentric radii, shadow borders, optical alignment

Tech implementations (choose one, loaded from sub-skills/):

Sub-skillStack
react-vite.mdReact + Vite + Framer Motion
htmx.mdHTMX + Jinja2 + hyperscript
jinja2.mdJinja2 template patterns
sass.mdSass/SCSS design tokens
vue.mdVue (Options/Composition API)
svelte.mdSvelte custom animations
html.mdHTML/CSS/SCSS fundamentals
tailwind.mdTailwind CSS
shadcn-ui.mdshadcn/ui design system
radix-ui.mdRadix UI primitives
material-design.mdMaterial Design
hugo.mdHugo static site
typescript.mdTypeScript patterns
css-scss.mdAdvanced CSS/SCSS

11-Phase Workflow:

  1. Design thinking + working model (sub-skills/design-thinking.md)
  2. Typography dimension (sub-skills/typography.md)
  3. Color & theme dimension (sub-skills/color-theme.md)
  4. Motion dimension (sub-skills/motion.md)
  5. Spatial composition (sub-skills/spatial.md)
  6. Page composition — hero, narrative, cards (sub-skills/page-composition.md)
  7. Imagery & visual anchors (sub-skills/imagery.md)
  8. Backgrounds & details (sub-skills/backgrounds.md)
  9. UI polish pass (sub-skills/ui-polish.md) 9.5. Delight pass — run /impeccable delight to add one unexpected element. If Impeccable is not installed, apply patterns from sub-skills/ui-polish.md Interaction Polish section instead.
  10. Implementation with chosen tech sub-skill
  11. Litmus checks (prompts/litmus-checks.md) → run bash scripts/design-lint.sh . --mode [brand|product] → fix warn findings → Visual validation → /frontend review (optional)

Additional resources in design-references/, design-systems/, prompts/, tools/.


/frontend component <name> — UI Components

Create production-ready UI components with TypeScript, variants, tests, and preview.

/frontend component Button "Primary action button with variants"
/frontend component Modal "Dialog component for user interactions"

Creates:

  • src/components/ui/[name]/[name].tsx — Component with variants (primary/secondary/success/danger/warning), sizes (sm/md/lg), states (disabled/hover/focus/active)
  • src/components/ui/[name]/[name].test.tsx — Tests for all variants, states, keyboard nav
  • Preview integration in src/app/preview/page.tsx

Requirements:

  • Semantic HTML (no div/span for interactive elements)
  • ARIA attributes (aria-label, aria-disabled, aria-describedby)
  • Keyboard navigation (Tab, Enter/Space, Escape, Arrow keys)
  • Focus indicators (outline: 2px solid, :focus-visible)
  • WCAG 2.1 AA color contrast (4.5:1 minimum)

Reference: templates/component-scaffold.md


/frontend e2e — Playwright E2E Tests

Write comprehensive E2E tests using Playwright with page object model pattern.

Templates (in templates/e2e/):

TemplatePurpose
playwright-config.tsMulti-browser configuration
page-object-model.tsBasePage class + page objects
custom-fixtures.tsTest data + authenticated state
responsive-tests.tsDesktop/tablet/mobile viewports
visual-regression.tsScreenshot comparison + snapshots
api-mocking.tsMock API responses with MSW
auth-setup.tsAuthentication state reuse

Structure: tests/e2e/{auth,features,workflows}/, tests/pages/


/frontend a11y — Accessibility Audit

Validate WCAG 2.1 Level AA compliance combining automated + manual testing.

WCAG 2.1 Principles:

  • Perceivable: Alt text, contrast, adaptable content
  • Operable: Keyboard nav, navigation, input modalities
  • Understandable: Readable, predictable, input assistance
  • Robust: Valid HTML, ARIA, compatibility

Workflow:

  1. Automated scan (axe-core catches ~30%)
  2. Manual keyboard testing (Tab through all interactive elements)
  3. Screen reader testing (VoiceOver/NVDA)
  4. Zoom to 200% (text resizable)
  5. Generate report using templates/a11y/accessibility-report.md

Reference: templates/a11y/wcag-checklist.md


/frontend review — Visual Design Review

Capture screenshot + source code → send to Gemini for visual design analysis against 5 dimensions.

Requires: Gemini API (vision-capable model). Does not work with Claude.

/frontend review                           # Auto-detect localhost
/frontend review http://localhost:3000     # Specific URL
/frontend review /path/to/screenshot.png   # Existing screenshot
/frontend review --full-page               # Full scrollable page
/frontend review --color-scheme dark       # Dark mode

Uses shared screenshot utility at ~/.claude/shared/companions/lib/screenshot.sh.


/frontend verify — Quick Verification

Decision tree for verifying frontend changes after implementation using playwright-cli:

  1. Is the dev server running?

    • Yes → Use playwright-cli for visual check + interaction
    • No → Start dev server first
  2. What needs verification?

    • Visual appearance → playwright-cli screenshot
    • Page structure → playwright-cli snapshot (YAML with element refs)
    • User flow → playwright-cli open → fill/click/type with refs
    • Console errors → playwright-cli console
    • Network issues → playwright-cli network
    • Responsive → playwright-cli resize at multiple viewports
  3. Tool selection:

    • Quick screenshot → playwright-cli screenshot
    • Interactive exploration → playwright-cli commands (open, snapshot, click, fill)
    • E2E test suite → npx playwright test or uv run pytest tests/e2e/

Canvas Mode (Claude Code + Pencil MCP)

When the pencil MCP server is connected (claude mcp list shows pencil: ✓ Connected), design phases 6–9 can run directly on a live canvas instead of writing code:

  • read_canvas — inspect current canvas state (frames, layers, tokens)
  • get_selected_frame — work on the frame selected in Pencil
  • get_style_guide — extract or apply design tokens from the canvas

Canvas mode replaces the code-first approach for visual iteration: design on canvas → extract tokens → implement. Use it for early-phase exploration before committing to code. Falls back to normal file-based workflow when Pencil is not connected.


Integration

Invoked by: User directly (/frontend) Connected skills:

  • /frontend design → implement → /frontend verify → /frontend review (validate)
  • /frontend component → /frontend e2e (test the component)
  • /frontend a11y → standalone audit, often after /frontend verify

External tools (Claude Code only):

  • /impeccable — 23-command design skill at ~/.local/share/skills/impeccable. Use /impeccable delight in Phase 9.5, /impeccable audit for a full anti-pattern scan, /impeccable detect for CI-gatable output.
  • pencil MCP — Canvas-based design iteration. Check with claude mcp list.

Agents:

  • browser-tester — Interactive testing with playwright-cli (auto-scales from quick verification to full-app discovery + fix)

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Validate WCAG 2.1 Level AA compliance and accessibility best practices. Use when performing accessibility audits and WCAG certification.

The English summary is being prepared. Showing the original description.

matteocervelli/llms25Updated May 22, 2026

Analyze feature requirements, dependencies, and security considerations. Use when starting feature implementation from GitHub issues to understand scope, technical feasibility, and risks.

The English summary is being prepared. Showing the original description.

matteocervelli/llms25Updated May 22, 2026

Run SQL queries against psql, BigQuery, or MySQL from the terminal, including natural-language-to-SQL and schema exploration. Use when analyzing data, inspecting DB state, or debugging tables. Trigger on "query the database", "SQL", "show me data from", "explore table".

The English summary is being prepared. Showing the original description.

matteocervelli/llms25Updated May 22, 2026

Design REST APIs or function contracts with clear request/response specifications, error handling patterns, authentication strategies, and comprehensive documentation.

The English summary is being prepared. Showing the original description.

matteocervelli/llms25Updated May 22, 2026

Generate comprehensive API endpoint tests for REST and GraphQL APIs. Creates tests for all HTTP methods, status codes, authentication, and validation.

The English summary is being prepared. Showing the original description.

matteocervelli/llms25Updated May 22, 2026

Design component architecture and module structure using established architectural patterns for clean, maintainable, and scalable systems.

The English summary is being prepared. Showing the original description.

matteocervelli/llms25Updated May 22, 2026

See all skills by matteocervelli

Report a problem with this skill