| name | frontend-design |
| description | Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics. |
| license | Complete terms in LICENSE.txt |
This skill guides creation of distinctive, production-grade frontend interfaces that avoid generic "AI slop" aesthetics. Implement real working code with exceptional attention to aesthetic details and creative choices.
The user provides frontend requirements: a component, page, application, or interface to build. They may include context about the purpose, audience, or technical constraints.
Design Thinking
Before coding, understand the context and commit to a BOLD aesthetic direction:
- Purpose: What problem does this interface solve? Who uses it?
- Tone: Pick an extreme: brutally minimal, maximalist chaos, retro-futuristic, organic/natural, luxury/refined, playful/toy-like, editorial/magazine, brutalist/raw, art deco/geometric, soft/pastel, industrial/utilitarian, etc. There are so many flavors to choose from. Use these for inspiration but design one that is true to the aesthetic direction.
- Constraints: Technical requirements (framework, performance, accessibility).
- Differentiation: What makes this UNFORGETTABLE? What's the one thing someone will remember?
CRITICAL: Choose a clear conceptual direction and execute it with precision. Bold maximalism and refined minimalism both work - the key is intentionality, not intensity.
Then implement working code (HTML/CSS/JS, React, Vue, etc.) that is:
- Production-grade and functional
- Visually striking and memorable
- Cohesive with a clear aesthetic point-of-view
- Meticulously refined in every detail
Frontend Aesthetics Guidelines
Focus on:
- Typography: Choose fonts that are beautiful, unique, and interesting. Avoid generic fonts like Arial and Inter; opt instead for distinctive choices that elevate the frontend's aesthetics; unexpected, characterful font choices. Pair a distinctive display font with a refined body font.
- Color & Theme: Commit to a cohesive aesthetic. Use CSS variables for consistency. Dominant colors with sharp accents outperform timid, evenly-distributed palettes.
- Motion: Use animations for effects and micro-interactions. Prioritize CSS-only solutions for HTML. Use Motion library for React when available. Focus on high-impact moments: one well-orchestrated page load with staggered reveals (animation-delay) creates more delight than scattered micro-interactions. Use scroll-triggering and hover states that surprise.
- Spatial Composition: Unexpected layouts. Asymmetry. Overlap. Diagonal flow. Grid-breaking elements. Generous negative space OR controlled density.
- Backgrounds & Visual Details: Create atmosphere and depth rather than defaulting to solid colors. Add contextual effects and textures that match the overall aesthetic. Apply creative forms like gradient meshes, noise textures, geometric patterns, layered transparencies, dramatic shadows, decorative borders, custom cursors, and grain overlays.
NEVER use generic AI-generated aesthetics like overused font families (Inter, Roboto, Arial, system fonts), cliched color schemes (particularly purple gradients on white backgrounds), predictable layouts and component patterns, and cookie-cutter design that lacks context-specific character.
Interpret creatively and make unexpected choices that feel genuinely designed for the context. No design should be the same. Vary between light and dark themes, different fonts, different aesthetics. NEVER converge on common choices (Space Grotesk, for example) across generations.
IMPORTANT: Match implementation complexity to the aesthetic vision. Maximalist designs need elaborate code with extensive animations and effects. Minimalist or refined designs need restraint, precision, and careful attention to spacing, typography, and subtle details. Elegance comes from executing the vision well.
Remember: Claude is capable of extraordinary creative work. Don't hold back, show what can truly be created when thinking outside the box and committing fully to a distinctive vision.
Website factory pipeline, section composition contract (Stage 9 build)
When building inside the website factory pipeline (Stage 9.1), the build agent generates a fresh Vite + React project per client from the niche template scaffolded by Module 2D. The section order, locked phrases, and visual contract come from the niche playbook, not from this file.
Composing the home page
The home page is composed of sections in the order the niche template's HomePage.jsx
declares. The niche template was scaffolded by Module 2D from the top-of-niche pool, so
section order reflects the patterns proven in that niche.
Every niche template ships at minimum:
- A primary navigation surface (always present, mobile + desktop)
- A hero section above the fold (always present)
- A footer (always present)
- A persistent CTA path on mobile (sticky element, click-to-call, drawer, or
bottom bar — the niche playbook + niche wireframe pick the shape)
Section count, ordering, and what else ships beyond the minimum are declared
by the niche template's HomePage.jsx, which Module 2D generates from the
niche wireframe. The niche playbook supplies the data those sections render.
Locked layout patterns (universal across niches)
| Pattern | Rule |
|---|
| Persistent mobile CTA | Always rendered in some shape, dual-action where the niche supports it. Exact shape (sticky bottom bar, click-to-call, drawer, etc.) comes from the niche wireframe. |
| Sticky nav | Always present, blur-through bg, primary CTA + niche-appropriate secondary action |
| Border radius | Driven by brand_dna.shape_mode (sharp = 0, softened = 5px). Use Tailwind utility rounded-[var(--radius-default)] or design-system class default |
| SVG motifs | Driven by brand_dna.shape_motif. The design system supplies the visual treatment |
| Section order | The niche template's HomePage.jsx declares it. Never reorder. |
| Locked phrases | Come from templates/{active-niche}/niche-playbook/copy-locks.json and brand-dna.copy.*. The build agent renders the fields; the niche playbook supplies the values. |
| Inline visual styles | NEVER add inline style={{ background, borderTop, boxShadow, borderRadius, color }} on section / card root elements. The niche template's design system IS the visual contract. |
Colour rules
All colours come from CSS variables. No hex values in JSX. The build agent writes a
:root override block from brand-dna.json. Components consume the variables.
Light-mode CSS is emitted only when brand_dna.theme_toggle === true. Default is dark.
Quality checks for pipeline builds
After building, verify:
- Glass / depth panels (if the niche template uses them) are visibly translucent (not opaque, not invisible)
- CTA buttons have the niche's prescribed visual treatment (3D shadow, ghost border, fill, etc.)
- Review pills (if the niche template uses them) show stars, count, and platform label below
- Hero decorative motif matches the brand's
shape_motif
- The persistent mobile CTA element is visible at mobile viewport and hidden at desktop
- No em-dashes in any rendered text
- All sentinels (
__REQUIRED__*) are filled (no surviving placeholders)
Design taste reference (impeccable)
For any component decision the niche template does not prescribe, read the relevant
impeccable reference file before deciding. These live at
.claude/skills/impeccable/skill/reference/.
| Decision area | Read this file |
|---|
| Anti-pattern audit (code-level) | audit.md, 5-dimension checklist covering a11y, performance, theming, responsive, AI tells |
| Font selection or typography | brand.md, reflex-reject list, aesthetic lane test, font selection procedure |
| Typography scale and readability | typography.md, modular scale, pairing, leading, line-length |
| Layout decisions | layout.md |
| Animation and easing | motion-design.md, expo-out only, what not to animate |
| Colour and contrast | color-and-contrast.md |
| Responsive and mobile | responsive-design.md |
| Hover states and interactions | interaction-design.md |
| Design system doctrine (full) | DESIGN.md at .claude/skills/impeccable/DESIGN.md |