Awesome-omni-skill nextjs-standards
Comprehensive coding standards, verification protocols, and templates for Next.js App Router projects. Auto-loads on Next.js detection.
install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/development/nextjs-standards" ~/.claude/skills/diegosouzapw-awesome-omni-skill-nextjs-standards && rm -rf "$T"
manifest:
skills/development/nextjs-standards/SKILL.mdsource content
Next.js Coding Standards Skill
Auto-Load Trigger: Presence of
ornext.config.*in"next"package.json
When to Use
- Starting a new Next.js project
- Before any TypeScript/React file edit
- When context seems lost mid-session
- After
or/agent_reset/vibe-primeAgent
🛑 Verification Protocol (MANDATORY)
After Every TypeScript/TSX File Edit
npx tsc --noEmit
If this fails:
- DO NOT proceed to next file
- Fix the type error immediately
- Re-run until it passes
- Only then continue
Before Any Handoff
python scripts/vibe-verify.py
All checks must pass before claiming "done."
The Blueprint & Build Protocol
Phase 1: Blueprint (Before Coding)
- Check
for existing patternsdocs/features/ - Create/update
docs/features/FeatureName.md - Wait for approval before coding
Phase 2: Build (Implementation)
- Announce which FR-XXX you're implementing
- Reference the corresponding issue in
docs/issues/ - Implement one step at a time
after every filetsc --noEmit- Mark acceptance criteria as complete
Phase 3: Finalization
- Run full verification (
)vibe-verify.py - Update issue file with completion status
- Generate handoff summary
Full-Stack Type Safety
The AI reliability secret: TypeScript tells you when you broke something.
Core Principle
If you change the backend, the frontend MUST type-check. If type-check fails:
- The change broke something
- Fix it before moving on
- Never ignore type errors
Stack Alignment
- Server Components fetch data → types flow to client
- API routes return typed responses → frontend consumes them
- Prisma schema changes → regenerate client → type-check
Next.js App Router Rules
- Server Components Default — No
unless required'use client' - Client Components Sparingly — Only for interactivity, hooks, browser APIs
- Data Fetching — In async Server Components, not
useEffect - Route Handlers — All API in
app/api/.../route.ts - Caching — Be explicit:
or{ cache: 'no-store' }revalidate = N
File Structure (Feature-Sliced)
src/ ├── app/ # Next.js App Router pages ├── features/ # Business domains │ └── [FeatureName]/ │ ├── components/ # Feature-specific components │ ├── hooks/ # Feature-specific hooks │ └── *.service.ts # Business logic ├── components/ │ ├── ui/ # Reusable UI (Button, Card) │ └── layout/ # Layout components ├── lib/ # Utilities, clients └── scripts/ # Automation (vibe-verify.py)
Component Rules
- 200-Line Limit — Refactor if exceeded
- Single Responsibility — One thing per component
- Props Interface — Always use TypeScript interfaces
- Custom Hooks — Extract stateful logic into
hooksuse*
Styling (Tailwind v4)
Why Tailwind for AI Reliability: Tailwind colocates styles with UI in a single file. Unlike separate
files, AI agents see the complete context (logic + styles + structure) without jumping between files. This dramatically reduces hallucinations and context fragmentation..css
@import "tailwindcss"; @theme { --color-background: #ffffff; --color-foreground: #0b1221; --color-border: #e5e7eb; } @theme .dark { --color-background: #0b1221; --color-foreground: #e5e7eb; }
- Use
tokens, not@theme
extensionstailwind.config - Utility-first, no custom CSS files
- Dark mode via
class on.dark<html>
Backend Rules
Service Layer Pattern
- Route Handlers = Controllers (parse request, return response)
- Services = Business logic (DB queries, calculations)
Validation
import { z } from 'zod'; const schema = z.object({ email: z.string().email(), password: z.string().min(8), });
All inputs validated with Zod. No exceptions.
Templates Available
This skill provides templates in
templates/:
- Coding_Guidelines.md — Copy to
docs/Coding_Guidelines.md - Issue_Template.md — Format for FR issues
Quick Reference
| Command | When |
|---|---|
| After every TS/TSX edit |
| Before handoff |
| Check code style |
| Verify production build |
Recovery Protocol
If you break something:
git status # See changed files git diff # See what changed git checkout -- <file> # Revert specific file git stash # Save and revert all