From a8deb6af6a14bc5e56e86289a2858a0258558388 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Sun, 19 Apr 2026 15:57:50 -0500 Subject: feat: adopt frontend-design (Apache 2.0 fork) + progressive-disclosure extensions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Forked verbatim from anthropics/skills/skills/frontend-design (Apache 2.0). LICENSE.txt preserved. Upstream SKILL.md prose (aesthetic guidance, archetype list, anti-pattern callouts) kept intact. Extensions added (clearly marked, load progressively — base SKILL.md stays lean for simple cases): SKILL.md: - Description extended with explicit negative triggers: narrow maintenance (single CSS bug, dependency upgrade, a11y-only retrofit), operational contexts where stakeholder has specified "minimal, functional, no creative direction," backend / API work, non-web UIs (mobile native, desktop, terminal), and refactoring without visible design component. - New "Workflow" section at the end of SKILL.md: four phases (intake, commitment, build, review) with pointers to reference files. Simple component tweaks skip the workflow; non-trivial redesigns walk it. - New "References" section: table mapping file → load-when condition. - Attribution footer marking upstream source + what's locally added. references/workflow.md (~150 lines) Intake questions (purpose, audience, operational context, functional priority, technical constraints, brand references, success criteria). Commitment step (archetype pick, trade-offs, font pairing, palette, motion, layout as one-line decisions). Build reminders. Review pointer. Guidance on when to skip phases. references/accessibility.md (~200 lines) WCAG AA contrast thresholds + practical check guidance. Keyboard navigation + focus management. Semantic HTML + ARIA rules. Reduced- motion CSS snippet. Smoke checklist. Operational-context note for defense / ISR work. references/responsive.md (~160 lines) Mobile-first vs desktop-first decision. Named breakpoints (Tailwind- style) vs magic pixels. Container queries. Aesthetic translation table — how each archetype handles small-screen scaling. Responsive typography with clamp(). Operational-dashboard note: desktop-primary is a legitimate product decision. references/design-review.md (~170 lines) Archetype check (does the build read as what was committed to?). Anti-pattern grep for fonts, palette, layout, motion, backgrounds, components. Code-quality-match check (ornate design + lazy code = failure). Performance sanity. Convergence check (if last 3 builds all used the same archetype, break the pattern). The one-sentence test for memorability. references/rationale-template.md (~160 lines) Template for design-rationale.md alongside the build. Nine sections (purpose, archetype, locked decisions, deliberately absent, accessibility, responsive, implementation, open questions, references). Filled example using a DeepSat SOCOM demo landing page to show density and specificity. Structure matches Anthropic's own pdf / docx / webapp-testing pattern (SKILL.md entry + references/ for progressive disclosure). Makefile SKILLS extended; make install symlinks globally. Adoption caveat resolved: name kept as `frontend-design` (not renamed to ui-design) — "frontend" signals scope (web code, not mobile / desktop / terminal UIs), upstream parity preserved for attribution. --- frontend-design/SKILL.md | 78 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 frontend-design/SKILL.md (limited to 'frontend-design/SKILL.md') diff --git a/frontend-design/SKILL.md b/frontend-design/SKILL.md new file mode 100644 index 0000000..81bcc04 --- /dev/null +++ b/frontend-design/SKILL.md @@ -0,0 +1,78 @@ +--- +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. Do NOT use for narrow maintenance tasks (single CSS bug fix, dependency upgrade, accessibility-only retrofit), for projects where the stakeholder has explicitly specified "minimal, functional, no creative direction," for backend / API / data-pipeline work, for non-web UIs (mobile native apps, desktop apps, terminal apps), or when the requested work is code refactoring without a visible design component. +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. + +--- + +## Workflow (Added) + +For non-trivial work, walk these four phases. Load the referenced files only when that phase is active — keeps context lean for simple component requests. + +1. **Intake** — see [references/workflow.md](references/workflow.md) for the question set. Establishes purpose, audience, operational context, functional priorities, technical constraints, brand references, success criteria. +2. **Commitment** — same file: pick one archetype from the list in *Design Thinking* above, state what you're trading away, lock font pairing / palette / motion philosophy / layout approach as one-line decisions. +3. **Build** — code it. Keep the chosen direction visible in every choice; the aesthetic guidance above applies here. Pull [references/responsive.md](references/responsive.md) if the component is layout-significant, [references/accessibility.md](references/accessibility.md) for interactive pieces. +4. **Review** — see [references/design-review.md](references/design-review.md). Self-audit against the archetype and the anti-pattern list before handoff. Emit a short rationale using [references/rationale-template.md](references/rationale-template.md) so the next iteration has context. + +For **simple component tweaks, quick polish, or one-line style changes**, skip the workflow — apply the aesthetic guidance inline. + +## References (Added) + +| File | Load when | +|---|---| +| [workflow.md](references/workflow.md) | Starting a new interface / non-trivial redesign | +| [accessibility.md](references/accessibility.md) | Building interactive components; accessibility audit | +| [responsive.md](references/responsive.md) | Layout-significant component or page; multi-viewport concerns | +| [design-review.md](references/design-review.md) | Review phase; auditing existing frontend code | +| [rationale-template.md](references/rationale-template.md) | Emitting a `design-rationale.md` alongside the build | + +--- + +## Attribution + +Forked from [anthropics/skills/skills/frontend-design](https://github.com/anthropics/skills/tree/main/skills/frontend-design) — Apache 2.0 licensed. See `LICENSE.txt` in this directory for the original copyright and terms. + +**Local additions** (not upstream): +- The description above now lists explicit negative triggers (narrow maintenance, operational-only, backend, non-web UI, refactoring without visible design). +- The *Workflow* and *References* sections at the end of this file are local additions. +- The files under `references/` are local additions authored for this fork. They extend the upstream's aesthetic guidance with intake questions, a design-review checklist, accessibility and responsive discipline, and a rationale-doc template. + +The upstream skill's aesthetic-direction content is intact; the additions are additive and load progressively (references only pull into context when a phase needs them). -- cgit v1.2.3