mcpField
D
design-frontend

design-frontend

github.com/kensaurusDesign & UI938 installsUpdated 1w ago
Repository

About design-frontend

design-frontend is a skill for frontend developers that guides design-system discovery and reuse before building interfaces. It also provides accessibility and visual-quality checks.

Key features

  1. 01Find design tokens and forbidden patterns
  2. 02Extend existing components first
  3. 03Follow typography and touch-target requirements
  4. 04Check keyboard focus and reduced motion
  5. 05Avoid common generic visual styles

Use cases

  1. 01Build interfaces on an existing design system
  2. 02Improve frontend components without duplication
  3. 03Review interface accessibility and visual consistency

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/kensaurus/skills --skill design-frontend

After installing, type/design-frontendin Claude Code to confirm it loaded.

Details

From the project README

Frontend Design Skill

Degree of freedom: MIXED. Visual composition [HIGH freedom]; design-system discovery [LOW freedom — run exactly].

Discover design systems, respect existing patterns, create beautiful interfaces.

How to reason

  1. Discover — tokens, components/ui, forbidden patterns
  2. Reuse — extend existing components; do not fork a second Button
  3. Compose — new surface on those tokens
  4. Check — type mins, 44px targets, reduced-motion, none of the named defaults in the Anti-Generic list

Worked example

Discover: components/ui/button.tsx + globals.css tokens; text-xs min; rounded-sm. Reuse: settings rows use existing Button / Input; no new primitive. Compose: new /settings page — token spacing, text-sm body, 44px save. Check: Anti-Generic list clear (no Inter, purple-on-white, or pill buttons); prefers-reduced-motion on any spinner.

Self-critique before reporting

  • Discovery stated — token file, radius, and forbidden list were spoken before JSX
  • Reuse first — no duplicate primitive next to components/ui
  • Mins held — readable type ≥ text-xs; tap targets ≥44px
  • Right owner — polish existing → enhance-web-ui; landing → enhance-web-landing; redesign existing → enhance-web-redesign

Phase 1: Design System Discovery [LOW freedom — run exactly]

Before writing ANY frontend code:

1.1 Find Design System Files
Glob: **/*design-system*.{md,ts,css}
Glob: **/tokens*.{ts,json}
Glob: **/components/ui/**
Glob: **/_*README*
1.2 Extract & Document Tokens
CategoryFindExamples
TypographySizes, weightstext-xs, font-medium
SpacingPadding, gapsp-4, gap-2
ColorsPalette, semanticbg-emerald-50
BordersRadius, stylesrounded-sm
AnimationsDurationsduration-200
1.3 Find Forbidden Patterns
grep -r "NEVER\|FORBIDDEN\|❌" docs/ README*
1.4 Verification Statement (REQUIRED)
"Design System Discovery:
├─ Found: [design system path]
├─ Typography min: [e.g., text-xs]
├─ Radius standard: [e.g., rounded-sm]
├─ Forbidden: [list patterns]
└─ Reusing: [existing components]"

Phase 2: Implementation Standards [HIGH freedom]

Typography Minimums
ContextMinimumUsage
Bodytext-sm (14px)Primary content
Captionstext-xs (12px)Labels, hints
Compacttext-[10px]Dense dashboards only

Never use text-[8px] or text-[9px] for readable content.

Accessibility Requirements
CheckRequirement
Touch targets≥44×44px
Contrast4.5:1 text, 3:1 UI
KeyboardtabIndex, focus styles
Motionprefers-reduced-motion
Quick Reference
Typography: text-xs=12px, text-sm=14px, text-base=16px
Spacing: 1=4px, 2=8px, 3=12px, 4=16px, 6=24px, 8=32px

Phase 3: Quality Checklist [LOW freedom — do not skip]

[ ] Uses design system tokens (no hardcoded values)
[ ] Extends existing components (no duplicates)
[ ] Typography ≥ text-xs for readable content
[ ] Touch targets ≥ 44px
[ ] Focus states visible
[ ] prefers-reduced-motion respected
Common Fixes
IssueFix
Tiny texttext-[9px] → text-xs
Bold weightsfont-bold → font-medium
Large radiusrounded-lg → rounded-sm
Spin animationanimate-spin → animate-pulse

Anti-Generic Checklist

Undirected drafts land on the same few defaults; the check is concrete only when they are named:

  • Inter / Roboto / Arial as the display or body face
  • Purple (violet/indigo) gradient on white
  • Cream / off-white page background
  • Italic accent words inside headlines
  • "01 / 02 / 03" numbered section labels
  • Monospace eyebrow labels on a non-code product
  • Pill-shaped (fully rounded) buttons as the house button
  • Three equal cards in a row as the default section layout

Extend this list with whatever the first draft used instead.


Remember: The codebase's design system is the source of truth. Search before creating. Reuse before reinventing.

Comments

Markdown supported