Production-grade AI agent skills for the modern React ecosystem, by PyModel
Quick start · Per-agent install · Skills · Why · Contributing
Tired of your agent being dumb, especially with React? This skill pack is the solution. It will make your agent even dumber!!!!!!!!! haha, I mean: try it first, then judge. <3 If it works out for you, drop a star.
React Frontend Skills is a collection of 18 AI agent skills for the React ecosystem. Drop them into your coding assistant and it starts applying real patterns for performance, UI, testing, data, and architecture instead of whatever it remembered from 2023.
Each skill is a portable SKILL.md folder, usually with detailed references/ or rules/ and often an AGENTS.md index. The layout follows the open agent-skills convention, so it works across major AI coding agents.
Coverage: React 19 and Next.js 16 performance, Tailwind CSS v4 and shadcn/ui, testing with Vitest, Playwright and MSW, data handling with TanStack Query, Zod, React Hook Form and nuqs, plus feature-based architecture.
One command installs everything and auto-detects the AI agents on your machine:
npx skills add PyModel/react-frontend-skills --allPick specific skills instead:
npx skills add PyModel/react-frontend-skills -s react,nextjs,tailwindInstall at the user level so every project sees them:
npx skills add PyModel/react-frontend-skills --all -gThis uses the open-source skills CLI. No account, no config. Skills get symlinked into your agent's directory and activate when relevant.
Published as @pymodel/react-frontend-skills. Add it as a project dependency, then sync into your agent:
npm install @pymodel/react-frontend-skills
npx skills experimental_syncexperimental_sync reads the package from node_modules and installs all 18 skills into your detected agent.
The separate @pymodel/react-frontend-skills-mcp package exposes every skill and reference file through read-only MCP tools and resources:
{
"mcpServers": {
"react-frontend-skills": {
"command": "npx",
"args": ["-y", "@pymodel/react-frontend-skills-mcp"]
}
}
}See mcp/README.md for the tool catalog and development details.
Target a single agent with -a <agent>. Use -s '*' for all skills and -g for a global install.
| Agent | Command |
|---|---|
| Claude Code | npx skills add PyModel/react-frontend-skills -a claude-code -s '*' -y |
| Codex | npx skills add PyModel/react-frontend-skills -a codex -s '*' -y |
| Cursor | npx skills add PyModel/react-frontend-skills -a cursor -s '*' -y |
| OpenCode | npx skills add PyModel/react-frontend-skills -a opencode -s '*' -y |
| Pi | npx skills add PyModel/react-frontend-skills -a pi -s '*' -y |
| Kiro CLI | npx skills add PyModel/react-frontend-skills -a kiro-cli -s '*' -y |
Pythinker and any other AGENTS.md-aware agent (manual)
Every skill ships a standard SKILL.md, and many also include an AGENTS.md index. Agents that read local instruction files can consume those directly, no CLI required:
# Clone once
git clone https://github.com/PyModel/react-frontend-skills.git
# Point your agent at the skills directory, or copy what you need
cp -r react-frontend-skills/skills/react ./.agent/skills/
cp -r react-frontend-skills/skills/nextjs ./.agent/skills/Then reference skills/<name>/SKILL.md from your agent context, plus AGENTS.md where present. This is the path for Pythinker and custom in-house agents.
Full list of 77 supported agents
The skills CLI 1.5.23 supports 77 agents, among them Claude Code, Codex, Cursor, OpenCode, Pi, Kiro CLI, GitHub Copilot, Gemini CLI, Windsurf, Cline, Roo, Goose, Kilo, Droid, Antigravity, Trae, Warp, Zed, Continue, and Qwen Code. Run npx skills add PyModel/react-frontend-skills with no agent flag and it detects yours.
This repository contains guidance, not runtime dependencies. The last maintenance pass was checked on 2026-08-20 against these package and documentation lines:
| Area | Audited line |
|---|---|
| React | 19.2 (react 19.2.8) |
| Next.js | 16.3 (next 16.3.1) |
| TypeScript | 7.0 (typescript 7.0.2) |
| Tailwind CSS | 4.3 (tailwindcss 4.3.3) |
| Vitest | 4.1 (vitest 4.1.11) |
| Playwright | 1.62 (@playwright/test 1.62.1) |
| MSW | 2.15 (msw 2.15.0) |
| TanStack Query | 5.x (@tanstack/react-query 5.101.4) |
| React Hook Form | 7.x (react-hook-form 7.85.0) |
| Zod | 4.4 (zod 4.4.3) |
| nuqs | 2.10 (nuqs 2.10.0) |
If your project pins a different version, trust that version's official docs over this baseline.
| Skill | Rules | What it covers |
|---|---|---|
| react | 40 | React 19 concurrent rendering, Server Components, hook optimization |
| nextjs | 40 | Next.js 16 App Router, caching, server components, routing |
| typescript | 44 | TypeScript 7 migration, compiler config, type safety, async patterns |
| Skill | Rules | What it covers |
|---|---|---|
| tailwind | 42 | Tailwind CSS v4 optimization, utility patterns, theming |
| shadcn | 42 | shadcn/ui with Radix or Base UI primitives, accessibility |
| ui-design | 42 | UI and UX practices, accessibility, responsive design |
| web-design-guidelines | dynamic | Fetches the current upstream web interface guidelines |
| Skill | Rules | What it covers |
|---|---|---|
| tanstack-query | 40 | Data fetching, caching, mutations, optimistic updates |
| react-hook-form | 41 | Form validation, performance, field arrays |
| zod | 43 | Schema validation, type inference, error handling |
| nuqs | 42 | Type-safe URL query state for Next.js |
| Skill | Rules | What it covers |
|---|---|---|
| vitest | 44 | Vitest 4 setup, mocking, async testing, worker pools |
| playwright | 43 | End-to-end testing, selectors, authentication, CI |
| msw | 45 | API mocking with Mock Service Worker |
| tdd | 42 | Test-driven development methodology |
| Skill | Rules | What it covers |
|---|---|---|
| feature-arch | 42 | Feature-based architecture, module organization |
| vercel-composition-patterns | 7 | React composition patterns |
| vercel-react-best-practices | 57 | React performance optimization |
Every skill is built from official documentation and patterns that held up in production work, not recycled generic advice.
| Priority | Impact | What lands here |
|---|---|---|
| CRITICAL | Major | Performance problems, build failures |
| HIGH | Significant | Noticeable improvements |
| MEDIUM | Important | Standard practices |
| LOW | Minor | Edge cases and small optimizations |
Each rule spells out the correct pattern with code, the anti-pattern to avoid, the reason behind it, and how to apply it.
react-frontend-skills/
├── mcp/ # Publishable read-only MCP server
├── skills/
│ ├── react/ # React 19 patterns
│ ├── nextjs/ # Next.js 16 App Router
│ ├── typescript/ # TypeScript optimization
│ ├── tailwind/ # Tailwind CSS v4
│ ├── shadcn/ # shadcn/ui components
│ ├── tanstack-query/ # Data fetching and caching
│ ├── react-hook-form/ # Form handling
│ ├── zod/ # Schema validation
│ ├── nuqs/ # URL state management
│ ├── vitest/ # Unit testing
│ ├── playwright/ # E2E testing
│ ├── msw/ # API mocking
│ ├── tdd/ # TDD methodology
│ ├── feature-arch/ # Feature architecture
│ ├── ui-design/ # UI and UX practices
│ ├── vercel-composition-patterns/
│ ├── vercel-react-best-practices/
│ └── web-design-guidelines/
├── README.md
├── LICENSE
└── CHANGELOG.md
Every skill folder contains SKILL.md. Most include a references/ or rules/ directory, many include an AGENTS.md index, and some include metadata.json. SKILL.md links the files that belong to that skill.
Once installed, skills activate when your agent picks up a matching task:
// "Create a Next.js page with data fetching" → nextjs, react, tanstack-query
// "Build a form with validation" → react-hook-form, zod, shadcn
// "Write tests for this component" → vitest, tdd, mswYou can also read the guidelines yourself:
cat skills/react/SKILL.md
cat skills/nextjs/references/cache-use-cache-directive.mdContributions are welcome.
- Fork the repo
- Add a skill folder under
skills/your-skill/withSKILL.mdand any supportingreferences/,rules/, or metadata it needs - Open a pull request
Improving an existing skill counts just as much. New rules, corrections, version bumps: open a PR.
MIT, 2026 Mohamed Elkholy. See LICENSE.
If this saved you some time, a star helps other people find it.
Built and maintained by elkaix · @elkaix