---
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, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design 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.

## Landing Pages & Marketing Sites

When building landing pages, promotional surfaces, or brand-focused websites, apply these additional rules:

### Hero Section Rules

- **One Composition**: The first viewport must read as ONE unified composition, not a dashboard or grid of boxes
- **Brand First**: Brand/product name must be a hero-level signal, not just nav text. No headline should overpower the brand
- **Brand Test**: If removing the nav makes the page feel generic or could belong to another brand, branding is too weak
- **Full-Bleed Hero**: Hero image should be a dominant edge-to-edge visual plane or background. Avoid inset images, side-panel images, rounded media cards, tiled collages, or floating image blocks
- **Hero Budget**: First viewport should contain ONLY: brand, one headline, one short supporting sentence, one CTA group, one dominant image. Do NOT place stats, schedules, event listings, address blocks, promos, metadata rows, or secondary marketing content above the fold
- **No Hero Overlays**: Do not place detached labels, floating badges, promo stickers, info chips, or callout boxes on top of hero media

### Card Usage

- **Default: No Cards**: Avoid cards by default
- **Never in Hero**: Never use cards in the hero section
- **Only for Interaction**: Cards are allowed ONLY when they are the container for a user interaction (clickable product cards, form containers)
- **Removal Test**: If removing border/shadow/background/radius doesn't hurt interaction or understanding, it should NOT be a card

### Section Design

- **One Job Per Section**: Each section should have one purpose, one headline, usually one short supporting sentence
- **Real Visual Anchor**: Imagery should show the product, place, atmosphere, or context. Decorative gradients and abstract backgrounds do NOT count as the main visual idea
- **Reduce Clutter**: Avoid pill clusters, stat strips, icon rows, boxed promos, schedule snippets, and multiple competing text blocks

### Page Structure (Narrative Flow)

Structure marketing pages as a narrative:

1. **Hero** — Establish identity and promise
2. **Supporting Imagery** — Show context or environment  
3. **Product Detail** — Explain the offering
4. **Social Proof** — Establish credibility
5. **Final CTA** — Convert interest into action

### Design System Approach

Before coding, define:
- **Design Constraints**: One H1, max 6 sections, max 2 typefaces, one accent color, one primary CTA above fold
- **Design Tokens**: Background, surface, primary text, muted text, accent
- **Typography Roles**: Display, headline, body, caption
- **Spacing System**: Consistent scale (e.g., 4px, 8px, 16px, 24px, 32px, 48px, 64px)

### Technical Implementation

- **Stack**: React + Tailwind CSS works well for most projects
- **Modern React**: Use useEffectEvent, startTransition, useDeferredValue when appropriate. Don't add useMemo/useCallback by default unless already used
- **Safe Layout**: Keep fixed/floating UI elements from overlapping text, buttons, or key content across screen sizes. Place in safe areas with sufficient spacing
- **Responsive**: Ensure page loads properly on both desktop and mobile

### Design Process

1. **Start with Constraints**: Define design principles upfront (one H1, max sections, fonts, colors, CTAs)
2. **Visual References**: Use screenshots or mood boards to guide layout rhythm, typography scale, spacing
3. **Real Content**: Use actual copy, product context, or clear project goals. Avoid generic placeholders
4. **Reasoning Level**: For simpler sites, use low/medium reasoning for faster, more focused results

### Exception

If working within an existing website or design system, preserve the established patterns, structure, and visual language. Don't force these rules onto existing design systems.

