frontend-web
Skill1 starsChanged 11 days agoMITView on GitHub
Build production-grade web interfaces. Triggers: website, landing page, web app, Next.js, React, Vue. Do NOT use for mobile native apps.
We split this skill into the rules it gives an agent
14 rules. About 0 are common, 4 are distinctive, and 10 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
10
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 18
Built on
engineering-fundamentals: Read that skill first. This document adds web-specific implementation. - Distinctive: line 47
If context exists → Resume from detected phase.
- Distinctive: line 71
Before any design decision, state the contract:
- Very specific: line 77
Write this as a one-line Design Read ("Reading this as: <page kind> for <audience>, <vibe>") and keep it visible during all phases.
- Very specific: line 93
Read guides/DISCOVERY-GUIDE.md for complete web checklist.
- Distinctive: line 134
Before writing any code, synthesize the design direction into a compact token system and critique it against the brief:
- Distinctive: line 140
If any part of the plan reads generic, revise before writing code.
- Very specific: line 184
Use next/image with priority on above-the-fold images.
- Very specific: line 195
Accessibility: Every animation MUST respect prefers-reduced-motion.
- Very specific: line 196
Performance: Only transform and opacity may be animated.
- Very specific: line 211
Use next/font/google for fonts in layout.tsx.
- Very specific: line 213
Use whileInView for entrance animations.
- Very specific: line 214
Use <Image> with descriptive alt text.
- Very specific: line 223
Then run
guides/PRE-FLIGHT.mdbefore declaring done: Every box must pass — this is a mechanical gate, not optional.
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Frontend Web
Built on engineering-fundamentals. Read that skill first. This document adds
web-specific implementation.
When to Use
Build, design, or redesign any web interface.
When NOT to Use
- Backend-only, CLI, non-visual software
- Native mobile (use
frontend-mobile) - Installable offline apps (use
frontend-pwa)
Output Contract
| Artifact | Format | Location | Quality Criteria |
| Web interface | Source code | Project source directory | Accessible, responsive, token-compliant, build passes |
Context Persistence Check
Before starting work:
- Check
design/DESIGN-LOCK.md:- Exists and < 7 days → Read it. Extract direction, palette, typography, key decisions.
7 days → Read it, ask: "Still valid?"
- Missing → Proceed with Phase 1.
- Check
SPEC.md:- Exists → Read it. Respect locked stack and boundaries.
- Missing → If non-trivial, invoke
spec-driven-development.
- If context exists → Resume from detected phase. Do NOT re-run discovery unless user requests changes.
Stack Detection
Check for STACK_CONFIG.md:
- Exists → Adapt examples to chosen stack.
- Missing → Default to React 19 + Next.js 16 + Tailwind v4.
Adaptation examples:
- React → Vue:
.vuefiles,ref()instead ofuseState - React → Svelte:
.sveltefiles,svelte/motioninstead of Framer Motion - React → Angular:
.component.tswith decorators
Core Process
Phase 0 — Language Detection
→ See engineering-fundamentals Phase 0.
Phase 0b — Brief Inference (MANDATORY before code)
Before any design decision, state the contract:
- Subject — One concrete thing this page is about. Not "a productivity app" but "a Gantt chart for solo freelancers."
- Audience — Who reads it. Not "users" but "freelancers checking deadlines on mobile."
- Single job — What this page must accomplish. Not "look professional" but "prove this saves 2 hrs/week."
Write this as a one-line Design Read ("Reading this as: <page kind> for <audience>, <vibe>") and keep it visible during all phases. Every layout, color, and type decision that follows must trace back to this contract.
See engineering-fundamentals/guides/DESIGN-CORE.md for the full Brief Inference protocol and Design Principles.
Then see guides/DESIGN-GUIDE.md for web-specific vibe → dial mapping.
Phase 1 — Discovery Gate
→ See engineering-fundamentals Phase 1 for universal discovery.
Web-specific questions:
- Pages: How many pages/sections?
- SEO: Public-facing and indexable?
- Animations: Scroll effects, entrance animations, micro-interactions?
Read guides/DISCOVERY-GUIDE.md for complete web checklist.
Phase 2 — Write Contracts
→ See engineering-fundamentals Phase 2.
Web-specific additions:
- SPEC.md must include: Tech stack (locked versions), Project structure, SEO requirements if public.
Phase 3 — Three Dials System
→ See engineering-fundamentals/guides/DESIGN-CORE.md for the universal Three Dials System (VARIANCE, MOTION, DENSITY), vibe→dial inference, use case presets, color principles, and dark mode protocol.
Then see guides/DESIGN-GUIDE.md for web-specific font selection, token application, and banned lists.
Phase 3b — Design System Map
| Brief reads as… | Use |
| Enterprise / Microsoft-adjacent | @fluentui/react-components |
| Material-flavored | @material/web + M3 tokens |
| IBM-style B2B | @carbon/react |
| Shopify surfaces | Polaris React |
| Atlassian product | @atlaskit/* |
| GitHub-style devtool | @primer/react-brand |
| Public-sector (UK/US) | govuk-frontend / uswds |
| Modern accessible React | @radix-ui/themes |
| Modern SaaS | shadcn/ui |
| Tailwind indie build | Tailwind v4 + dark: |
Rules: One system per project. Use official packages — do not recreate CSS by hand. For aesthetics without packages (glassmorphism, bento, brutalism, editorial, dark tech), build with native CSS + Tailwind.
Phase 3c — Design Plan Review (MANDATORY before code)
Before writing any code, synthesize the design direction into a compact token system and critique it against the brief:
- Extract tokens: Color palette (4-6 hex values), typeface pairings (display + body + utility), layout concept (1-2 sentence description), signature element (the one memorable thing)
- Review against the brief: Does each token trace back to Subject, Audience, or Single Job? If a choice reads like the same default you'd produce for any project — revise it.
- One bold choice: Identify one real aesthetic risk you can justify. Spend boldness in one place; keep everything else quiet and disciplined.
If any part of the plan reads generic, revise before writing code. Only after the plan passes its own critique should you proceed to build.
Phase 4 — Stack Lock-in
| Tool | Minimum | Notes |
| Node.js | 20.9+ | |
| Next.js | 16.1.1+ | App Router, async params, RSC by default |
| React | 19.2+ | |
| TypeScript | 5.7+ | |
| Tailwind CSS | v4 | @theme in CSS, not tailwind.config.ts |
| shadcn CLI | latest | Registry-based, copy-not-install |
| Framer Motion | 12+ | Primary animation engine |
| lucide-react | latest | Default icons |
Optional: lenis, split-type, gsap + @gsap/react (pinned sections only).
Forbidden: GSAP by default, tailwind.config.ts, middleware.ts, Spline.
Phase 5 — Anti-Slop Rules (Web)
→ See engineering-fundamentals/guides/ANTI-SLOP-CORE.md for universal AI tells, content density rules, copy protocol, and UI state requirements.
Then see guides/ANTI-SLOP-GUIDE.md for web-specific layout tells (three feature cards, hero patterns, bento grids), font bans, and interactive patterns.
Web-specific additions:
Typography
- BANNED as display: Inter, Roboto, Arial, Space Grotesk, Geist.
- BANNED as serif defaults: Fraunces, Instrument Serif.
- Preferred sans: Geist, Outfit, Satoshi. Pairings: Geist+GeistMono, Satoshi+JetBrainsMono.
Layout
- Zigzag cap: Max 2 consecutive text+image splits.
- Section-layout ban: 8 sections → ≥4 different layout families.
- Hero: Fits viewport, ≤2 headline lines, ≤20 subtext words, top padding max
pt-24.
Images & Assets
- See
guides/IMAGE-STRATEGY.mdfor image generation pipeline, social proof rules, and photography guidelines. - No div-based fake screenshots — BANNED.
- Use
next/imagewithpriorityon above-the-fold images.
Phase 6 — Animation System
Read guides/ANIMATION-GUIDE.md.
Summary:
- Primary: Framer Motion
Revealcomponent. - Fallback: CSS
animation-timelinefor scroll effects, WAAPI for precise JS animations. - Accessibility: Every animation MUST respect
prefers-reduced-motion. - Performance: Only
transformandopacitymay be animated.
Phase 7 — Build with Tokens
BEFORE WRITING CODE:
- Read
design/DESIGN-LOCK.md— Verify approved direction, palette, typography. - Check
design/approved/— Screenshots, previews, moodboards. - Cross-check with
DESIGN.md— Tokens in code must match locked system.
Then build:
- Apply tokens from
DESIGN.mdtosrc/app/globals.css. - Use
next/font/googlefor fonts inlayout.tsx. - Build sections in canonical order: Nav → Hero → Value Prop → Services → About → Testimonials → CTA → Footer.
- Use
whileInViewfor entrance animations. - Use
<Image>with descriptivealttext. "use client"only when hooks, events, or state present.
Phase 8 — QA Gates
→ See engineering-fundamentals Phase 5 for universal gates. Read engineering-fundamentals/guides/PRE-FLIGHT-CORE.md for universal checks first.
Then run guides/PRE-FLIGHT.md before declaring done. Every box must pass — this is a mechanical gate, not optional.
Log metrics:
LOG METRIC: gate - project: [detect] - gate_name: frontend-web-qa - result: pass/fail
LOG METRIC: build - project: [detect] - result: pass/fail - warnings: [count]DESIGN.md Output
Populates DESIGN.md sections 13-17 with web-specific values:
| Section | Content |
| CSS Architecture | CSS custom properties in :root, Tailwind @theme. |
| Theme Implementation | data-theme attribute toggle, .dark class with CSS variables. |
| Component Framework | React with shadcn/ui. Framer Motion for animation. Lucide React icons. |
| Platform Responsiveness | Tailwind breakpoints (sm/md/lg/xl/2xl). Mobile-first. |
| Asset Pipeline | next/font/google with --font-display, --font-body CSS variables. Next.js <Image> with alt. |
Examples & Troubleshooting
Read guides/EXAMPLES.md:
- Landing page walkthrough, animation, troubleshooting
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- bnema/pi-public★ 1same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository59 other files it gives its agents.
- AGENTS.mdAGENTS.md
- templates/CLAUDE.mdCLAUDE.md
- adapt-skillSkill
- api-and-interface-designSkill
- architecture-analysisSkill
- audit-skillSkill
- backend-api-masterySkill
- browser-testing-with-devtoolsSkill
- ci-cd-and-automationSkill
- clarify-skillSkill
- cli-toolsSkill
- code-review-and-qualitySkill
- code-simplificationSkill
- context-engineeringSkill
- critique-skillSkill
- customize-opencodeSkill
- debugging-and-error-recoverySkill
- debugging-three-strikesSkill
- delight-skillSkill
- deprecation-and-migrationSkill
- dev-environment-auditSkill
- documentation-and-adrsSkill
- doubt-driven-developmentSkill
- engineering-fundamentalsSkill
- frontend-desktopSkill
- frontend-mobileSkill
- frontend-pwaSkill
- frontend-ui-engineeringSkill
- fullstack-shippingSkill
- gateSkill
- git-init-and-versioningSkill
- git-workflow-and-versioningSkill
- hard-skillSkill
- idea-refineSkill
- incremental-implementationSkill
- industrial-brutalist-uiSkill
- interview-meSkill
- minimalist-uiSkill
- multi-agent-orchestrationSkill
- observability-and-instrumentationSkill
- optimize-skillSkill
- output-skillSkill
- performance-optimizationSkill
- planning-and-task-breakdownSkill
- polish-skillSkill
- project-health-checkSkill
- project-metricsSkill
- redesign-skillSkill
- security-and-hardeningSkill
- self-improvementSkill
- shipping-and-launchSkill
- skill-creatorSkill
- skill-improverSkill
- soft-premium-uiSkill
- source-driven-developmentSkill
- spec-driven-developmentSkill
- test-driven-developmentSkill
- typeset-skillSkill
- user-onboardingSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

