Create design specs following Apple HIG, Material Design 3, design tokens, and accessibility standards
npx claudepluginhub cure-consulting-group/productengineeringskillsThis skill uses the workspace's default tool permissions.
Expert design across Apple HIG, Material Design 3, and Web. Platform-native first. Accessibility is a requirement, not a feature.
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
Expert design across Apple HIG, Material Design 3, and Web. Platform-native first. Accessibility is a requirement, not a feature.
For deep platform-specific expertise, use the dedicated design expert skills:
ios-design-expert — Apple HIG, SF Symbols, Dynamic Type, SwiftUI components, hapticsandroid-design-expert — Material Design 3, dynamic color, tonal palettes, adaptive layouts, Composeweb-design-expert — Responsive design, CSS architecture, design tokens, container queries, TailwindBrand Foundation
├── Design Tokens (primitive values — color hex, spacing px, font names)
│ └── Semantic Tokens (purpose-mapped — color.surface.primary, spacing.component.gap)
├── Component Library (atoms → molecules → organisms)
├── Pattern Library (flows, layouts, navigation patterns)
└── Platform Adaptations
├── iOS (HIG-compliant — SwiftUI components)
├── Android (MD3-compliant — Compose components)
└── Web (CSS custom properties + component library)
Before starting, gather project context silently:
PORTFOLIO.md if it exists in the project root or parent directories for product/team contextcat package.json 2>/dev/null || cat build.gradle.kts 2>/dev/null || cat Podfile 2>/dev/null to detect stackgit log --oneline -5 2>/dev/null for recent changesls src/ app/ lib/ functions/ 2>/dev/null to understand project structure| Request | Platform | Action |
|---|---|---|
| iOS screen / component | Apple HIG | Design per HIG guidelines |
| Android screen / component | Material Design 3 | Design per MD3 spec |
| Web screen / component | Web design system | Design with modern web standards |
| Cross-platform design system | All three | Generate platform-adaptive specs |
| Design tokens | All | Define token system |
| Accessibility spec | All | Generate a11y requirements |
| Motion / animation spec | Platform-specific | Define animations |
| Figma architecture | All | Structure Figma file |
| Design review / audit | Platform-specific | Audit against guidelines |
After classifying the request, detect which platforms are in scope:
/android-design-expert for M3-specific guidance/ios-design-expert for HIG-specific guidance/web-design-expert for web-specific guidanceGenerate using Write:
docs/design-brief.md — problem, user flows, wireframes (ASCII), component listdocs/design-tokens.md — color, type, spacing, elevation valuesdocs/component-inventory.md — all components needed with states and variantsdocs/accessibility-requirements.md — WCAG AA requirements for this featureColor contrast: Text on background >= 4.5:1 (AA) | >= 7:1 (AAA)
Large text (18pt+) >= 3:1
Touch targets: iOS minimum 44x44pt | Android minimum 48x48dp | Web minimum 44x44px
Focus indicators: Visible, 3:1 contrast against adjacent colors
Motion: Respect prefers-reduced-motion — all animations have no-motion fallback
Screen readers: Every interactive element has accessible name
Color alone: Never the sole means of conveying information
Base unit: 8pt (iOS) / 8dp (Android) / 8px (Web)
Scale: 4, 8, 12, 16, 20, 24, 32, 40, 48, 64, 80, 96
Component padding: multiples of 8
Text line height: nearest 4pt multiple
Never use odd numbers except for border widths (1pt/1dp/1px)
Never use fewer than 2 type sizes in a screen (creates visual hierarchy)
Never use more than 3 type sizes in a single component
Line length: 45-75 characters optimal for body text
Line height: 1.4-1.6x for body, 1.1-1.3x for display/heading
For component specs, always output:
For screen specs, always output:
| Context | Use |
|---|---|
| Native iOS app | Apple HIG exclusively — no Material components |
| Native Android app | Material Design 3 exclusively — no HIG components |
| Cross-platform (React Native, Flutter) | Platform-adaptive: HIG on iOS, MD3 on Android |
| Web app (any user) | Web design system with Material influence acceptable |
| PWA | Web design system — do not use native platform patterns |
| Hybrid (Capacitor/Ionic) | Web patterns — avoid platform-native illusions |