@cubis/foundry 0.3.32 → 0.3.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +23 -0
- package/bin/cubis.js +461 -37
- package/mcp/README.md +17 -0
- package/mcp/catalogs/default.json +14 -0
- package/mcp/powers/atlassian-mcp/POWER.md +91 -0
- package/mcp/powers/atlassian-mcp/SKILL.md +88 -0
- package/mcp/powers/building-mcp-server-on-cloudflare/POWER.md +261 -0
- package/mcp/powers/building-mcp-server-on-cloudflare/SKILL.md +258 -0
- package/mcp/powers/datadog-automation/POWER.md +238 -0
- package/mcp/powers/datadog-automation/SKILL.md +235 -0
- package/mcp/powers/github-automation/POWER.md +230 -0
- package/mcp/powers/github-automation/SKILL.md +227 -0
- package/mcp/powers/mcp-builder/POWER.md +179 -0
- package/mcp/powers/mcp-builder/SKILL.md +176 -0
- package/mcp/powers/mcp-developer/POWER.md +88 -0
- package/mcp/powers/mcp-developer/SKILL.md +85 -0
- package/mcp/powers/postman/POWER.md +243 -0
- package/mcp/powers/postman/SKILL.md +240 -0
- package/mcp/powers/sentry-automation/POWER.md +235 -0
- package/mcp/powers/sentry-automation/SKILL.md +232 -0
- package/mcp/skills/atlassian-mcp/SKILL.md +88 -0
- package/mcp/skills/building-mcp-server-on-cloudflare/SKILL.md +258 -0
- package/mcp/skills/datadog-automation/SKILL.md +235 -0
- package/mcp/skills/github-automation/SKILL.md +227 -0
- package/mcp/skills/mcp-builder/SKILL.md +176 -0
- package/mcp/skills/mcp-developer/SKILL.md +85 -0
- package/mcp/skills/postman/SKILL.md +240 -0
- package/mcp/skills/sentry-automation/SKILL.md +232 -0
- package/package.json +2 -1
- package/workflows/powers/architecture/POWER.md +12 -46
- package/workflows/powers/architecture/SKILL.md +12 -46
- package/workflows/powers/atlassian-mcp/POWER.md +11 -81
- package/workflows/powers/atlassian-mcp/SKILL.md +11 -81
- package/workflows/powers/building-mcp-server-on-cloudflare/POWER.md +12 -252
- package/workflows/powers/building-mcp-server-on-cloudflare/SKILL.md +12 -252
- package/workflows/powers/code-review-checklist/POWER.md +11 -99
- package/workflows/powers/code-review-checklist/SKILL.md +11 -99
- package/workflows/powers/csharp-pro/POWER.md +43 -0
- package/workflows/powers/csharp-pro/SKILL.md +40 -0
- package/workflows/powers/database-design/POWER.md +47 -5
- package/workflows/powers/database-design/SKILL.md +45 -4
- package/workflows/powers/database-optimizer/POWER.md +11 -23
- package/workflows/powers/database-optimizer/SKILL.md +5 -5
- package/workflows/powers/datadog-automation/POWER.md +12 -229
- package/workflows/powers/datadog-automation/SKILL.md +12 -229
- package/workflows/powers/debugging-wizard/POWER.md +12 -78
- package/workflows/powers/debugging-wizard/SKILL.md +12 -78
- package/workflows/powers/deployment-procedures/POWER.md +11 -231
- package/workflows/powers/deployment-procedures/SKILL.md +11 -231
- package/workflows/powers/drift-flutter/POWER.md +51 -0
- package/workflows/powers/drift-flutter/SKILL.md +2 -2
- package/workflows/powers/github-automation/POWER.md +12 -221
- package/workflows/powers/github-automation/SKILL.md +12 -221
- package/workflows/powers/golang-pro/POWER.md +38 -66
- package/workflows/powers/golang-pro/SKILL.md +38 -66
- package/workflows/powers/java-pro/POWER.md +43 -0
- package/workflows/powers/java-pro/SKILL.md +40 -0
- package/workflows/powers/javascript-pro/POWER.md +37 -67
- package/workflows/powers/javascript-pro/SKILL.md +37 -67
- package/workflows/powers/kotlin-pro/POWER.md +43 -0
- package/workflows/powers/kotlin-pro/SKILL.md +40 -0
- package/workflows/powers/mcp-builder/POWER.md +12 -170
- package/workflows/powers/mcp-builder/SKILL.md +12 -170
- package/workflows/powers/mcp-developer/POWER.md +11 -78
- package/workflows/powers/mcp-developer/SKILL.md +11 -78
- package/workflows/powers/nextjs-developer/POWER.md +41 -148
- package/workflows/powers/nextjs-developer/SKILL.md +41 -148
- package/workflows/powers/nextjs-react-expert/POWER.md +10 -281
- package/workflows/powers/nextjs-react-expert/SKILL.md +10 -281
- package/workflows/powers/nodejs-best-practices/POWER.md +33 -317
- package/workflows/powers/nodejs-best-practices/SKILL.md +33 -317
- package/workflows/powers/postman/POWER.md +11 -233
- package/workflows/powers/postman/SKILL.md +11 -233
- package/workflows/powers/python-patterns/POWER.md +11 -431
- package/workflows/powers/python-patterns/SKILL.md +11 -431
- package/workflows/powers/python-pro/POWER.md +38 -66
- package/workflows/powers/python-pro/SKILL.md +38 -66
- package/workflows/powers/react-best-practices/POWER.md +35 -118
- package/workflows/powers/react-best-practices/SKILL.md +35 -118
- package/workflows/powers/react-expert/POWER.md +38 -66
- package/workflows/powers/react-expert/SKILL.md +38 -66
- package/workflows/powers/rust-engineer/POWER.md +10 -75
- package/workflows/powers/rust-engineer/SKILL.md +10 -75
- package/workflows/powers/rust-pro/POWER.md +36 -163
- package/workflows/powers/rust-pro/SKILL.md +36 -163
- package/workflows/powers/sentry-automation/POWER.md +12 -226
- package/workflows/powers/sentry-automation/SKILL.md +12 -226
- package/workflows/powers/server-management/POWER.md +11 -151
- package/workflows/powers/server-management/SKILL.md +11 -151
- package/workflows/powers/tdd-workflow/POWER.md +12 -140
- package/workflows/powers/tdd-workflow/SKILL.md +12 -140
- package/workflows/powers/testing-patterns/POWER.md +11 -168
- package/workflows/powers/testing-patterns/SKILL.md +11 -168
- package/workflows/powers/typescript-pro/POWER.md +43 -70
- package/workflows/powers/typescript-pro/SKILL.md +43 -70
- package/workflows/powers/vercel-ai/POWER.md +43 -0
- package/workflows/powers/vercel-ai/SKILL.md +40 -0
- package/workflows/powers/vercel-ai-gateway/POWER.md +11 -69
- package/workflows/powers/vercel-ai-gateway/SKILL.md +11 -69
- package/workflows/powers/vercel-ai-sdk/POWER.md +11 -49
- package/workflows/powers/vercel-ai-sdk/SKILL.md +11 -49
- package/workflows/powers/vercel-caching/POWER.md +10 -72
- package/workflows/powers/vercel-caching/SKILL.md +10 -72
- package/workflows/powers/vercel-cli/POWER.md +11 -75
- package/workflows/powers/vercel-cli/SKILL.md +11 -75
- package/workflows/powers/vercel-delivery/POWER.md +45 -0
- package/workflows/powers/vercel-delivery/SKILL.md +42 -0
- package/workflows/powers/vercel-deployments/POWER.md +10 -90
- package/workflows/powers/vercel-deployments/SKILL.md +10 -90
- package/workflows/powers/vercel-domains/POWER.md +10 -69
- package/workflows/powers/vercel-domains/SKILL.md +10 -69
- package/workflows/powers/vercel-firewall/POWER.md +10 -61
- package/workflows/powers/vercel-firewall/SKILL.md +10 -61
- package/workflows/powers/vercel-flags/POWER.md +10 -62
- package/workflows/powers/vercel-flags/SKILL.md +10 -62
- package/workflows/powers/vercel-functions/POWER.md +10 -70
- package/workflows/powers/vercel-functions/SKILL.md +10 -70
- package/workflows/powers/vercel-routing/POWER.md +10 -68
- package/workflows/powers/vercel-routing/SKILL.md +10 -68
- package/workflows/powers/vercel-runtime/POWER.md +43 -0
- package/workflows/powers/vercel-runtime/SKILL.md +40 -0
- package/workflows/powers/vercel-security/POWER.md +43 -0
- package/workflows/powers/vercel-security/SKILL.md +40 -0
- package/workflows/powers/vulnerability-scanner/POWER.md +11 -266
- package/workflows/powers/vulnerability-scanner/SKILL.md +11 -266
- package/workflows/scripts/generate-powers.mjs +95 -202
- package/workflows/skills/atlassian-mcp/SKILL.md +11 -81
- package/workflows/skills/building-mcp-server-on-cloudflare/SKILL.md +12 -252
- package/workflows/skills/catalogs/core.json +30 -0
- package/workflows/skills/catalogs/web-backend.json +70 -0
- package/workflows/skills/csharp-pro/SKILL.md +40 -0
- package/workflows/skills/datadog-automation/SKILL.md +12 -229
- package/workflows/skills/github-automation/SKILL.md +12 -221
- package/workflows/skills/golang-pro/SKILL.md +38 -66
- package/workflows/skills/java-pro/SKILL.md +40 -0
- package/workflows/skills/javascript-pro/SKILL.md +37 -67
- package/workflows/skills/kotlin-pro/SKILL.md +40 -0
- package/workflows/skills/mcp-builder/SKILL.md +12 -170
- package/workflows/skills/mcp-developer/SKILL.md +11 -78
- package/workflows/skills/nextjs-developer/SKILL.md +41 -148
- package/workflows/skills/nextjs-react-expert/SKILL.md +5 -11
- package/workflows/skills/nodejs-best-practices/SKILL.md +33 -317
- package/workflows/skills/postman/SKILL.md +11 -233
- package/workflows/skills/python-pro/SKILL.md +38 -66
- package/workflows/skills/react-best-practices/SKILL.md +35 -118
- package/workflows/skills/react-expert/SKILL.md +38 -66
- package/workflows/skills/rust-pro/SKILL.md +36 -163
- package/workflows/skills/sentry-automation/SKILL.md +12 -226
- package/workflows/skills/skills_index.json +43 -57
- package/workflows/skills/typescript-pro/SKILL.md +43 -70
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/backend-specialist.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/code-archaeologist.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/database-architect.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/debugger.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/devops-engineer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/documentation-writer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/explorer-agent.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/frontend-specialist.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/game-developer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/mobile-developer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/orchestrator.md +28 -400
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/penetration-tester.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/performance-optimizer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/product-manager.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/product-owner.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/project-planner.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/qa-automation-engineer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/security-auditor.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/seo-specialist.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/test-engineer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/agents/vercel-expert.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/antigravity/rules/GEMINI.md +7 -6
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/backend-specialist.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/code-archaeologist.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/database-architect.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/debugger.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/devops-engineer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/documentation-writer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/explorer-agent.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/frontend-specialist.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/game-developer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/mobile-developer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/orchestrator.md +28 -400
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/penetration-tester.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/performance-optimizer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/product-manager.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/product-owner.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/project-planner.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/qa-automation-engineer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/security-auditor.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/seo-specialist.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/test-engineer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/agents/vercel-expert.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/codex/rules/AGENTS.md +7 -6
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/backend-specialist.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/code-archaeologist.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/database-architect.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/debugger.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/devops-engineer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/documentation-writer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/explorer-agent.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/frontend-specialist.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/game-developer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/mobile-developer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/orchestrator.md +28 -400
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/penetration-tester.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/performance-optimizer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/product-manager.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/product-owner.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/project-planner.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/qa-automation-engineer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/security-auditor.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/seo-specialist.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/test-engineer.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/agents/vercel-expert.md +1 -1
- package/workflows/workflows/agent-environment-setup/platforms/copilot/rules/AGENTS.md +7 -6
- package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/csharp-pro/SKILL.md +40 -0
- package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/golang-pro/SKILL.md +38 -66
- package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/java-pro/SKILL.md +40 -0
- package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/javascript-pro/SKILL.md +37 -67
- package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/kotlin-pro/SKILL.md +40 -0
- package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/nextjs-developer/SKILL.md +41 -148
- package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/nextjs-react-expert/SKILL.md +6 -12
- package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/nodejs-best-practices/SKILL.md +33 -317
- package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/python-pro/SKILL.md +38 -66
- package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/react-best-practices/SKILL.md +35 -118
- package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/react-expert/SKILL.md +38 -66
- package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/rust-pro/SKILL.md +36 -163
- package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/skills_index.json +43 -57
- package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/typescript-pro/SKILL.md +43 -70
- package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/csharp-pro/SKILL.md +40 -0
- package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/golang-pro/SKILL.md +38 -66
- package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/java-pro/SKILL.md +40 -0
- package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/javascript-pro/SKILL.md +37 -67
- package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/kotlin-pro/SKILL.md +40 -0
- package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/nextjs-developer/SKILL.md +41 -148
- package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/nextjs-react-expert/SKILL.md +6 -12
- package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/nodejs-best-practices/SKILL.md +33 -317
- package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/python-pro/SKILL.md +38 -66
- package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/react-best-practices/SKILL.md +35 -118
- package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/react-expert/SKILL.md +38 -66
- package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/rust-pro/SKILL.md +36 -163
- package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/skills_index.json +43 -57
- package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/typescript-pro/SKILL.md +43 -70
- package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/csharp-pro/SKILL.md +40 -0
- package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/golang-pro/SKILL.md +38 -66
- package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/java-pro/SKILL.md +40 -0
- package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/javascript-pro/SKILL.md +37 -67
- package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/kotlin-pro/SKILL.md +40 -0
- package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/nextjs-developer/SKILL.md +41 -148
- package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/nextjs-react-expert/SKILL.md +6 -12
- package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/nodejs-best-practices/SKILL.md +33 -317
- package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/python-pro/SKILL.md +38 -66
- package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/react-best-practices/SKILL.md +35 -118
- package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/react-expert/SKILL.md +38 -66
- package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/rust-pro/SKILL.md +36 -163
- package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/skills_index.json +43 -57
- package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/typescript-pro/SKILL.md +43 -70
- package/workflows/workflows/agent-environment-setup/shared/agents/backend-specialist.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/code-archaeologist.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/database-architect.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/debugger.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/devops-engineer.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/documentation-writer.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/explorer-agent.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/frontend-specialist.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/game-developer.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/mobile-developer.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/orchestrator.md +28 -400
- package/workflows/workflows/agent-environment-setup/shared/agents/penetration-tester.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/performance-optimizer.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/product-manager.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/product-owner.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/project-planner.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/qa-automation-engineer.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/security-auditor.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/seo-specialist.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/test-engineer.md +1 -1
- package/workflows/workflows/agent-environment-setup/shared/agents/vercel-expert.md +1 -1
- package/workflows/powers/sub-agents/scripts/run_subagent.py.bak +0 -512
- /package/{workflows → mcp}/powers/atlassian-mcp/steering/authentication-patterns.md +0 -0
- /package/{workflows → mcp}/powers/atlassian-mcp/steering/common-workflows.md +0 -0
- /package/{workflows → mcp}/powers/atlassian-mcp/steering/confluence-operations.md +0 -0
- /package/{workflows → mcp}/powers/atlassian-mcp/steering/jira-queries.md +0 -0
- /package/{workflows → mcp}/powers/atlassian-mcp/steering/mcp-server-setup.md +0 -0
- /package/{workflows → mcp}/powers/building-mcp-server-on-cloudflare/steering/examples.md +0 -0
- /package/{workflows → mcp}/powers/building-mcp-server-on-cloudflare/steering/oauth-setup.md +0 -0
- /package/{workflows → mcp}/powers/building-mcp-server-on-cloudflare/steering/troubleshooting.md +0 -0
- /package/{workflows → mcp}/powers/mcp-builder/LICENSE.txt +0 -0
- /package/{workflows → mcp}/powers/mcp-builder/reference/evaluation.md +0 -0
- /package/{workflows → mcp}/powers/mcp-builder/reference/mcp_best_practices.md +0 -0
- /package/{workflows → mcp}/powers/mcp-builder/reference/node_mcp_server.md +0 -0
- /package/{workflows → mcp}/powers/mcp-builder/reference/python_mcp_server.md +0 -0
- /package/{workflows → mcp}/powers/mcp-builder/scripts/connections.py +0 -0
- /package/{workflows → mcp}/powers/mcp-builder/scripts/evaluation.py +0 -0
- /package/{workflows → mcp}/powers/mcp-builder/scripts/example_evaluation.xml +0 -0
- /package/{workflows → mcp}/powers/mcp-builder/scripts/requirements.txt +0 -0
- /package/{workflows → mcp}/powers/mcp-developer/steering/protocol.md +0 -0
- /package/{workflows → mcp}/powers/mcp-developer/steering/python-sdk.md +0 -0
- /package/{workflows → mcp}/powers/mcp-developer/steering/resources.md +0 -0
- /package/{workflows → mcp}/powers/mcp-developer/steering/tools.md +0 -0
- /package/{workflows → mcp}/powers/mcp-developer/steering/typescript-sdk.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-expert/POWER.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-expert/SKILL.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-expert/steering/bloc-state.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-expert/steering/engineering-principles.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-expert/steering/gorouter-navigation.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-expert/steering/performance.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-expert/steering/project-structure.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-expert/steering/riverpod-state.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-expert/steering/widget-patterns.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-security-reviewer/POWER.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-security-reviewer/SKILL.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-security-reviewer/steering/log_redaction.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-security-reviewer/steering/network_hardening.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-security-reviewer/steering/secret-scanning.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-security-reviewer/steering/secure_storage_policy.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-security-reviewer/steering/vulnerability-patterns.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-security-reviewer/templates/security_review_response.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-test-master/POWER.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-test-master/SKILL.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-test-master/steering/golden-testing.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-test-master/steering/integration-testing.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-test-master/steering/property-testing.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-test-master/steering/riverpod-testing.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-test-master/steering/test-utilities.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-test-master/steering/unit-testing.md +0 -0
- /package/{workflows → mcp}/powers/postman/flutter-test-master/steering/widget-testing.md +0 -0
- /package/{workflows → mcp}/powers/postman/git-commit/POWER.md +0 -0
- /package/{workflows → mcp}/powers/postman/git-commit/SKILL.md +0 -0
- /package/{workflows → mcp}/powers/postman/gorouter-restoration/POWER.md +0 -0
- /package/{workflows → mcp}/powers/postman/gorouter-restoration/SKILL.md +0 -0
- /package/{workflows → mcp}/powers/postman/gorouter-restoration/steering/guard_patterns.md +0 -0
- /package/{workflows → mcp}/powers/postman/gorouter-restoration/steering/tab_preservation.md +0 -0
- /package/{workflows → mcp}/powers/postman/gorouter-restoration/templates/guard_redirect.md +0 -0
- /package/{workflows → mcp}/powers/postman/gorouter-restoration/templates/stateful_shell_skeleton.md +0 -0
- /package/{workflows → mcp}/powers/postman/mcp.json +0 -0
- /package/{workflows → mcp}/powers/postman/microservices-architect/POWER.md +0 -0
- /package/{workflows → mcp}/powers/postman/microservices-architect/SKILL.md +0 -0
- /package/{workflows → mcp}/powers/postman/microservices-architect/steering/communication.md +0 -0
- /package/{workflows → mcp}/powers/postman/microservices-architect/steering/data.md +0 -0
- /package/{workflows → mcp}/powers/postman/microservices-architect/steering/decomposition.md +0 -0
- /package/{workflows → mcp}/powers/postman/microservices-architect/steering/observability.md +0 -0
- /package/{workflows → mcp}/powers/postman/microservices-architect/steering/patterns.md +0 -0
- /package/{workflows → mcp}/powers/postman/nestjs-expert/POWER.md +0 -0
- /package/{workflows → mcp}/powers/postman/nestjs-expert/SKILL.md +0 -0
- /package/{workflows → mcp}/powers/postman/nestjs-expert/steering/authentication.md +0 -0
- /package/{workflows → mcp}/powers/postman/nestjs-expert/steering/controllers-routing.md +0 -0
- /package/{workflows → mcp}/powers/postman/nestjs-expert/steering/dtos-validation.md +0 -0
- /package/{workflows → mcp}/powers/postman/nestjs-expert/steering/migration-from-express.md +0 -0
- /package/{workflows → mcp}/powers/postman/nestjs-expert/steering/secure-sessions.md +0 -0
- /package/{workflows → mcp}/powers/postman/nestjs-expert/steering/services-di.md +0 -0
- /package/{workflows → mcp}/powers/postman/nestjs-expert/steering/strangler-fig-pattern.md +0 -0
- /package/{workflows → mcp}/powers/postman/nestjs-expert/steering/testing-patterns.md +0 -0
- /package/{workflows → mcp}/powers/postman/oneup-design/POWER.md +0 -0
- /package/{workflows → mcp}/powers/postman/oneup-design/SKILL.md +0 -0
- /package/{workflows → mcp}/powers/postman/oneup-design/steering/colors.md +0 -0
- /package/{workflows → mcp}/powers/postman/oneup-design/steering/components.md +0 -0
- /package/{workflows → mcp}/powers/postman/oneup-design/steering/spacing.md +0 -0
- /package/{workflows → mcp}/powers/postman/openapi-docs/POWER.md +0 -0
- /package/{workflows → mcp}/powers/postman/openapi-docs/SKILL.md +0 -0
- /package/{workflows → mcp}/powers/postman/openapi-docs/steering/crud-templates.md +0 -0
- /package/{workflows → mcp}/powers/postman/openapi-docs/steering/framework-express.md +0 -0
- /package/{workflows → mcp}/powers/postman/openapi-docs/steering/framework-fastapi.md +0 -0
- /package/{workflows → mcp}/powers/postman/openapi-docs/steering/framework-nestjs.md +0 -0
- /package/{workflows → mcp}/powers/postman/openapi-docs/steering/framework-raw-openapi.md +0 -0
- /package/{workflows → mcp}/powers/postman/openapi-docs/steering/openapi-checklist.md +0 -0
- /package/{workflows → mcp}/powers/postman/openapi-docs/steering/stoplight-ui.md +0 -0
- /package/{workflows → mcp}/powers/postman/steering/steering.md +0 -0
- /package/{workflows → mcp}/skills/atlassian-mcp/references/authentication-patterns.md +0 -0
- /package/{workflows → mcp}/skills/atlassian-mcp/references/common-workflows.md +0 -0
- /package/{workflows → mcp}/skills/atlassian-mcp/references/confluence-operations.md +0 -0
- /package/{workflows → mcp}/skills/atlassian-mcp/references/jira-queries.md +0 -0
- /package/{workflows → mcp}/skills/atlassian-mcp/references/mcp-server-setup.md +0 -0
- /package/{workflows → mcp}/skills/building-mcp-server-on-cloudflare/references/examples.md +0 -0
- /package/{workflows → mcp}/skills/building-mcp-server-on-cloudflare/references/oauth-setup.md +0 -0
- /package/{workflows → mcp}/skills/building-mcp-server-on-cloudflare/references/tool-patterns.md +0 -0
- /package/{workflows → mcp}/skills/building-mcp-server-on-cloudflare/references/troubleshooting.md +0 -0
- /package/{workflows → mcp}/skills/mcp-builder/LICENSE.txt +0 -0
- /package/{workflows → mcp}/skills/mcp-builder/reference/evaluation.md +0 -0
- /package/{workflows → mcp}/skills/mcp-builder/reference/mcp_best_practices.md +0 -0
- /package/{workflows → mcp}/skills/mcp-builder/reference/node_mcp_server.md +0 -0
- /package/{workflows → mcp}/skills/mcp-builder/reference/python_mcp_server.md +0 -0
- /package/{workflows → mcp}/skills/mcp-builder/scripts/connections.py +0 -0
- /package/{workflows → mcp}/skills/mcp-builder/scripts/evaluation.py +0 -0
- /package/{workflows → mcp}/skills/mcp-builder/scripts/example_evaluation.xml +0 -0
- /package/{workflows → mcp}/skills/mcp-builder/scripts/requirements.txt +0 -0
- /package/{workflows → mcp}/skills/mcp-developer/references/protocol.md +0 -0
- /package/{workflows → mcp}/skills/mcp-developer/references/python-sdk.md +0 -0
- /package/{workflows → mcp}/skills/mcp-developer/references/resources.md +0 -0
- /package/{workflows → mcp}/skills/mcp-developer/references/tools.md +0 -0
- /package/{workflows → mcp}/skills/mcp-developer/references/typescript-sdk.md +0 -0
- /package/{workflows → mcp}/skills/postman/POWER.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-expert/POWER.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-expert/SKILL.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-expert/references/bloc-state.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-expert/references/engineering-principles.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-expert/references/gorouter-navigation.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-expert/references/performance.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-expert/references/project-structure.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-expert/references/riverpod-state.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-expert/references/widget-patterns.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-security-reviewer/POWER.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-security-reviewer/SKILL.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-security-reviewer/references/log_redaction.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-security-reviewer/references/network_hardening.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-security-reviewer/references/secret-scanning.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-security-reviewer/references/secure_storage_policy.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-security-reviewer/references/vulnerability-patterns.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-security-reviewer/templates/security_review_response.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-test-master/POWER.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-test-master/SKILL.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-test-master/references/golden-testing.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-test-master/references/integration-testing.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-test-master/references/property-testing.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-test-master/references/riverpod-testing.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-test-master/references/test-utilities.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-test-master/references/unit-testing.md +0 -0
- /package/{workflows → mcp}/skills/postman/flutter-test-master/references/widget-testing.md +0 -0
- /package/{workflows → mcp}/skills/postman/git-commit/POWER.md +0 -0
- /package/{workflows → mcp}/skills/postman/git-commit/SKILL.md +0 -0
- /package/{workflows → mcp}/skills/postman/gorouter-restoration/POWER.md +0 -0
- /package/{workflows → mcp}/skills/postman/gorouter-restoration/SKILL.md +0 -0
- /package/{workflows → mcp}/skills/postman/gorouter-restoration/references/guard_patterns.md +0 -0
- /package/{workflows → mcp}/skills/postman/gorouter-restoration/references/tab_preservation.md +0 -0
- /package/{workflows → mcp}/skills/postman/gorouter-restoration/templates/guard_redirect.md +0 -0
- /package/{workflows → mcp}/skills/postman/gorouter-restoration/templates/stateful_shell_skeleton.md +0 -0
- /package/{workflows → mcp}/skills/postman/mcp.json +0 -0
- /package/{workflows → mcp}/skills/postman/microservices-architect/POWER.md +0 -0
- /package/{workflows → mcp}/skills/postman/microservices-architect/SKILL.md +0 -0
- /package/{workflows → mcp}/skills/postman/microservices-architect/references/communication.md +0 -0
- /package/{workflows → mcp}/skills/postman/microservices-architect/references/data.md +0 -0
- /package/{workflows → mcp}/skills/postman/microservices-architect/references/decomposition.md +0 -0
- /package/{workflows → mcp}/skills/postman/microservices-architect/references/observability.md +0 -0
- /package/{workflows → mcp}/skills/postman/microservices-architect/references/patterns.md +0 -0
- /package/{workflows → mcp}/skills/postman/nestjs-expert/POWER.md +0 -0
- /package/{workflows → mcp}/skills/postman/nestjs-expert/SKILL.md +0 -0
- /package/{workflows → mcp}/skills/postman/nestjs-expert/references/authentication.md +0 -0
- /package/{workflows → mcp}/skills/postman/nestjs-expert/references/controllers-routing.md +0 -0
- /package/{workflows → mcp}/skills/postman/nestjs-expert/references/dtos-validation.md +0 -0
- /package/{workflows → mcp}/skills/postman/nestjs-expert/references/migration-from-express.md +0 -0
- /package/{workflows → mcp}/skills/postman/nestjs-expert/references/secure-sessions.md +0 -0
- /package/{workflows → mcp}/skills/postman/nestjs-expert/references/services-di.md +0 -0
- /package/{workflows → mcp}/skills/postman/nestjs-expert/references/strangler-fig-pattern.md +0 -0
- /package/{workflows → mcp}/skills/postman/nestjs-expert/references/testing-patterns.md +0 -0
- /package/{workflows → mcp}/skills/postman/oneup-design/POWER.md +0 -0
- /package/{workflows → mcp}/skills/postman/oneup-design/SKILL.md +0 -0
- /package/{workflows → mcp}/skills/postman/oneup-design/references/colors.md +0 -0
- /package/{workflows → mcp}/skills/postman/oneup-design/references/components.md +0 -0
- /package/{workflows → mcp}/skills/postman/oneup-design/references/spacing.md +0 -0
- /package/{workflows → mcp}/skills/postman/openapi-docs/POWER.md +0 -0
- /package/{workflows → mcp}/skills/postman/openapi-docs/SKILL.md +0 -0
- /package/{workflows → mcp}/skills/postman/openapi-docs/references/crud-templates.md +0 -0
- /package/{workflows → mcp}/skills/postman/openapi-docs/references/framework-express.md +0 -0
- /package/{workflows → mcp}/skills/postman/openapi-docs/references/framework-fastapi.md +0 -0
- /package/{workflows → mcp}/skills/postman/openapi-docs/references/framework-nestjs.md +0 -0
- /package/{workflows → mcp}/skills/postman/openapi-docs/references/framework-raw-openapi.md +0 -0
- /package/{workflows → mcp}/skills/postman/openapi-docs/references/openapi-checklist.md +0 -0
- /package/{workflows → mcp}/skills/postman/openapi-docs/references/stoplight-ui.md +0 -0
- /package/{workflows → mcp}/skills/postman/references/steering.md +0 -0
|
@@ -1,139 +1,56 @@
|
|
|
1
1
|
````markdown
|
|
2
2
|
---
|
|
3
3
|
inclusion: manual
|
|
4
|
-
name: react-best-practices
|
|
5
|
-
description: "Performance-focused React/Next.js review checklist
|
|
4
|
+
name: "react-best-practices"
|
|
5
|
+
description: "Performance-focused React/Next.js review checklist. Use for audits and optimization passes, not as primary implementation skill."
|
|
6
6
|
license: MIT
|
|
7
7
|
metadata:
|
|
8
8
|
author: vercel
|
|
9
|
-
version: "
|
|
9
|
+
version: "2.0.0"
|
|
10
|
+
domain: "frontend"
|
|
11
|
+
role: "review-checklist"
|
|
10
12
|
---
|
|
11
13
|
|
|
12
|
-
#
|
|
14
|
+
# React Best Practices
|
|
13
15
|
|
|
14
|
-
|
|
16
|
+
## Purpose
|
|
15
17
|
|
|
16
|
-
|
|
18
|
+
Use this skill to run structured optimization reviews on React/Next.js code. Pair it with implementation skills (`react-expert`, `nextjs-developer`) when code changes are required.
|
|
17
19
|
|
|
18
|
-
|
|
19
|
-
- Writing new React components or Next.js pages
|
|
20
|
-
- Implementing data fetching (client or server-side)
|
|
21
|
-
- Reviewing code for performance issues
|
|
22
|
-
- Refactoring existing React/Next.js code
|
|
23
|
-
- Optimizing bundle size or load times
|
|
20
|
+
## Review order
|
|
24
21
|
|
|
25
|
-
|
|
22
|
+
1. Async waterfalls and request parallelization.
|
|
23
|
+
2. Bundle and hydration footprint.
|
|
24
|
+
3. Server rendering and serialization overhead.
|
|
25
|
+
4. Client data-fetching and rerender churn.
|
|
26
|
+
5. JS/runtime hot paths.
|
|
26
27
|
|
|
27
|
-
|
|
28
|
-
|----------|----------|--------|--------|
|
|
29
|
-
| 1 | Eliminating Waterfalls | CRITICAL | `async-` |
|
|
30
|
-
| 2 | Bundle Size Optimization | CRITICAL | `bundle-` |
|
|
31
|
-
| 3 | Server-Side Performance | HIGH | `server-` |
|
|
32
|
-
| 4 | Client-Side Data Fetching | MEDIUM-HIGH | `client-` |
|
|
33
|
-
| 5 | Re-render Optimization | MEDIUM | `rerender-` |
|
|
34
|
-
| 6 | Rendering Performance | MEDIUM | `rendering-` |
|
|
35
|
-
| 7 | JavaScript Performance | LOW-MEDIUM | `js-` |
|
|
36
|
-
| 8 | Advanced Patterns | LOW | `advanced-` |
|
|
28
|
+
## High-impact checks
|
|
37
29
|
|
|
38
|
-
|
|
30
|
+
- Parallelize independent async work.
|
|
31
|
+
- Eliminate unnecessary client components.
|
|
32
|
+
- Remove heavy modules from critical path.
|
|
33
|
+
- Avoid unstable props that trigger deep rerenders.
|
|
34
|
+
- Keep server-to-client payloads minimal.
|
|
39
35
|
|
|
40
|
-
|
|
36
|
+
## Output format
|
|
41
37
|
|
|
42
|
-
|
|
43
|
-
- `async-parallel` - Use Promise.all() for independent operations
|
|
44
|
-
- `async-dependencies` - Use better-all for partial dependencies
|
|
45
|
-
- `async-api-routes` - Start promises early, await late in API routes
|
|
46
|
-
- `async-suspense-boundaries` - Use Suspense to stream content
|
|
38
|
+
Return prioritized findings with:
|
|
47
39
|
|
|
48
|
-
|
|
40
|
+
1. Issue and impact.
|
|
41
|
+
2. Minimal safe change.
|
|
42
|
+
3. Verification method (profile metric or test).
|
|
49
43
|
|
|
50
|
-
|
|
51
|
-
- `bundle-dynamic-imports` - Use next/dynamic for heavy components
|
|
52
|
-
- `bundle-defer-third-party` - Load analytics/logging after hydration
|
|
53
|
-
- `bundle-conditional` - Load modules only when feature is activated
|
|
54
|
-
- `bundle-preload` - Preload on hover/focus for perceived speed
|
|
44
|
+
## Rule catalog
|
|
55
45
|
|
|
56
|
-
|
|
46
|
+
Detailed rules are under `rules/` and grouped by prefix:
|
|
57
47
|
|
|
58
|
-
- `
|
|
59
|
-
- `
|
|
60
|
-
- `server
|
|
61
|
-
- `
|
|
62
|
-
- `
|
|
63
|
-
- `
|
|
64
|
-
- `
|
|
65
|
-
|
|
66
|
-
### 4. Client-Side Data Fetching (MEDIUM-HIGH)
|
|
67
|
-
|
|
68
|
-
- `client-swr-dedup` - Use SWR for automatic request deduplication
|
|
69
|
-
- `client-event-listeners` - Deduplicate global event listeners
|
|
70
|
-
- `client-passive-event-listeners` - Use passive listeners for scroll
|
|
71
|
-
- `client-localstorage-schema` - Version and minimize localStorage data
|
|
72
|
-
|
|
73
|
-
### 5. Re-render Optimization (MEDIUM)
|
|
74
|
-
|
|
75
|
-
- `rerender-defer-reads` - Don't subscribe to state only used in callbacks
|
|
76
|
-
- `rerender-memo` - Extract expensive work into memoized components
|
|
77
|
-
- `rerender-memo-with-default-value` - Hoist default non-primitive props
|
|
78
|
-
- `rerender-dependencies` - Use primitive dependencies in effects
|
|
79
|
-
- `rerender-derived-state` - Subscribe to derived booleans, not raw values
|
|
80
|
-
- `rerender-derived-state-no-effect` - Derive state during render, not effects
|
|
81
|
-
- `rerender-functional-setstate` - Use functional setState for stable callbacks
|
|
82
|
-
- `rerender-lazy-state-init` - Pass function to useState for expensive values
|
|
83
|
-
- `rerender-simple-expression-in-memo` - Avoid memo for simple primitives
|
|
84
|
-
- `rerender-move-effect-to-event` - Put interaction logic in event handlers
|
|
85
|
-
- `rerender-transitions` - Use startTransition for non-urgent updates
|
|
86
|
-
- `rerender-use-ref-transient-values` - Use refs for transient frequent values
|
|
87
|
-
|
|
88
|
-
### 6. Rendering Performance (MEDIUM)
|
|
89
|
-
|
|
90
|
-
- `rendering-animate-svg-wrapper` - Animate div wrapper, not SVG element
|
|
91
|
-
- `rendering-content-visibility` - Use content-visibility for long lists
|
|
92
|
-
- `rendering-hoist-jsx` - Extract static JSX outside components
|
|
93
|
-
- `rendering-svg-precision` - Reduce SVG coordinate precision
|
|
94
|
-
- `rendering-hydration-no-flicker` - Use inline script for client-only data
|
|
95
|
-
- `rendering-hydration-suppress-warning` - Suppress expected mismatches
|
|
96
|
-
- `rendering-activity` - Use Activity component for show/hide
|
|
97
|
-
- `rendering-conditional-render` - Use ternary, not && for conditionals
|
|
98
|
-
- `rendering-usetransition-loading` - Prefer useTransition for loading state
|
|
99
|
-
|
|
100
|
-
### 7. JavaScript Performance (LOW-MEDIUM)
|
|
101
|
-
|
|
102
|
-
- `js-batch-dom-css` - Group CSS changes via classes or cssText
|
|
103
|
-
- `js-index-maps` - Build Map for repeated lookups
|
|
104
|
-
- `js-cache-property-access` - Cache object properties in loops
|
|
105
|
-
- `js-cache-function-results` - Cache function results in module-level Map
|
|
106
|
-
- `js-cache-storage` - Cache localStorage/sessionStorage reads
|
|
107
|
-
- `js-combine-iterations` - Combine multiple filter/map into one loop
|
|
108
|
-
- `js-length-check-first` - Check array length before expensive comparison
|
|
109
|
-
- `js-early-exit` - Return early from functions
|
|
110
|
-
- `js-hoist-regexp` - Hoist RegExp creation outside loops
|
|
111
|
-
- `js-min-max-loop` - Use loop for min/max instead of sort
|
|
112
|
-
- `js-set-map-lookups` - Use Set/Map for O(1) lookups
|
|
113
|
-
- `js-tosorted-immutable` - Use toSorted() for immutability
|
|
114
|
-
|
|
115
|
-
### 8. Advanced Patterns (LOW)
|
|
116
|
-
|
|
117
|
-
- `advanced-event-handler-refs` - Store event handlers in refs
|
|
118
|
-
- `advanced-init-once` - Initialize app once per app load
|
|
119
|
-
- `advanced-use-latest` - useLatest for stable callback refs
|
|
120
|
-
|
|
121
|
-
## How to Use
|
|
122
|
-
|
|
123
|
-
Read individual rule files for detailed explanations and code examples:
|
|
124
|
-
|
|
125
|
-
```
|
|
126
|
-
rules/async-parallel.md
|
|
127
|
-
rules/bundle-barrel-imports.md
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
Each rule file contains:
|
|
131
|
-
- Brief explanation of why it matters
|
|
132
|
-
- Incorrect code example with explanation
|
|
133
|
-
- Correct code example with explanation
|
|
134
|
-
- Additional context and references
|
|
135
|
-
|
|
136
|
-
## Full Compiled Document
|
|
137
|
-
|
|
138
|
-
For the complete guide with all rules expanded: `AGENTS.md`
|
|
48
|
+
- `async-*`
|
|
49
|
+
- `bundle-*`
|
|
50
|
+
- `server-*`
|
|
51
|
+
- `client-*`
|
|
52
|
+
- `rerender-*`
|
|
53
|
+
- `rendering-*`
|
|
54
|
+
- `js-*`
|
|
55
|
+
- `advanced-*`
|
|
139
56
|
````
|
|
@@ -1,136 +1,53 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: react-best-practices
|
|
3
|
-
description: "Performance-focused React/Next.js review checklist
|
|
2
|
+
name: "react-best-practices"
|
|
3
|
+
description: "Performance-focused React/Next.js review checklist. Use for audits and optimization passes, not as primary implementation skill."
|
|
4
4
|
license: MIT
|
|
5
5
|
metadata:
|
|
6
6
|
author: vercel
|
|
7
|
-
version: "
|
|
7
|
+
version: "2.0.0"
|
|
8
|
+
domain: "frontend"
|
|
9
|
+
role: "review-checklist"
|
|
8
10
|
---
|
|
9
11
|
|
|
10
|
-
#
|
|
12
|
+
# React Best Practices
|
|
11
13
|
|
|
12
|
-
|
|
14
|
+
## Purpose
|
|
13
15
|
|
|
14
|
-
|
|
16
|
+
Use this skill to run structured optimization reviews on React/Next.js code. Pair it with implementation skills (`react-expert`, `nextjs-developer`) when code changes are required.
|
|
15
17
|
|
|
16
|
-
|
|
17
|
-
- Writing new React components or Next.js pages
|
|
18
|
-
- Implementing data fetching (client or server-side)
|
|
19
|
-
- Reviewing code for performance issues
|
|
20
|
-
- Refactoring existing React/Next.js code
|
|
21
|
-
- Optimizing bundle size or load times
|
|
18
|
+
## Review order
|
|
22
19
|
|
|
23
|
-
|
|
20
|
+
1. Async waterfalls and request parallelization.
|
|
21
|
+
2. Bundle and hydration footprint.
|
|
22
|
+
3. Server rendering and serialization overhead.
|
|
23
|
+
4. Client data-fetching and rerender churn.
|
|
24
|
+
5. JS/runtime hot paths.
|
|
24
25
|
|
|
25
|
-
|
|
26
|
-
|----------|----------|--------|--------|
|
|
27
|
-
| 1 | Eliminating Waterfalls | CRITICAL | `async-` |
|
|
28
|
-
| 2 | Bundle Size Optimization | CRITICAL | `bundle-` |
|
|
29
|
-
| 3 | Server-Side Performance | HIGH | `server-` |
|
|
30
|
-
| 4 | Client-Side Data Fetching | MEDIUM-HIGH | `client-` |
|
|
31
|
-
| 5 | Re-render Optimization | MEDIUM | `rerender-` |
|
|
32
|
-
| 6 | Rendering Performance | MEDIUM | `rendering-` |
|
|
33
|
-
| 7 | JavaScript Performance | LOW-MEDIUM | `js-` |
|
|
34
|
-
| 8 | Advanced Patterns | LOW | `advanced-` |
|
|
26
|
+
## High-impact checks
|
|
35
27
|
|
|
36
|
-
|
|
28
|
+
- Parallelize independent async work.
|
|
29
|
+
- Eliminate unnecessary client components.
|
|
30
|
+
- Remove heavy modules from critical path.
|
|
31
|
+
- Avoid unstable props that trigger deep rerenders.
|
|
32
|
+
- Keep server-to-client payloads minimal.
|
|
37
33
|
|
|
38
|
-
|
|
34
|
+
## Output format
|
|
39
35
|
|
|
40
|
-
|
|
41
|
-
- `async-parallel` - Use Promise.all() for independent operations
|
|
42
|
-
- `async-dependencies` - Use better-all for partial dependencies
|
|
43
|
-
- `async-api-routes` - Start promises early, await late in API routes
|
|
44
|
-
- `async-suspense-boundaries` - Use Suspense to stream content
|
|
36
|
+
Return prioritized findings with:
|
|
45
37
|
|
|
46
|
-
|
|
38
|
+
1. Issue and impact.
|
|
39
|
+
2. Minimal safe change.
|
|
40
|
+
3. Verification method (profile metric or test).
|
|
47
41
|
|
|
48
|
-
|
|
49
|
-
- `bundle-dynamic-imports` - Use next/dynamic for heavy components
|
|
50
|
-
- `bundle-defer-third-party` - Load analytics/logging after hydration
|
|
51
|
-
- `bundle-conditional` - Load modules only when feature is activated
|
|
52
|
-
- `bundle-preload` - Preload on hover/focus for perceived speed
|
|
42
|
+
## Rule catalog
|
|
53
43
|
|
|
54
|
-
|
|
44
|
+
Detailed rules are under `rules/` and grouped by prefix:
|
|
55
45
|
|
|
56
|
-
- `
|
|
57
|
-
- `
|
|
58
|
-
- `server
|
|
59
|
-
- `
|
|
60
|
-
- `
|
|
61
|
-
- `
|
|
62
|
-
- `
|
|
63
|
-
|
|
64
|
-
### 4. Client-Side Data Fetching (MEDIUM-HIGH)
|
|
65
|
-
|
|
66
|
-
- `client-swr-dedup` - Use SWR for automatic request deduplication
|
|
67
|
-
- `client-event-listeners` - Deduplicate global event listeners
|
|
68
|
-
- `client-passive-event-listeners` - Use passive listeners for scroll
|
|
69
|
-
- `client-localstorage-schema` - Version and minimize localStorage data
|
|
70
|
-
|
|
71
|
-
### 5. Re-render Optimization (MEDIUM)
|
|
72
|
-
|
|
73
|
-
- `rerender-defer-reads` - Don't subscribe to state only used in callbacks
|
|
74
|
-
- `rerender-memo` - Extract expensive work into memoized components
|
|
75
|
-
- `rerender-memo-with-default-value` - Hoist default non-primitive props
|
|
76
|
-
- `rerender-dependencies` - Use primitive dependencies in effects
|
|
77
|
-
- `rerender-derived-state` - Subscribe to derived booleans, not raw values
|
|
78
|
-
- `rerender-derived-state-no-effect` - Derive state during render, not effects
|
|
79
|
-
- `rerender-functional-setstate` - Use functional setState for stable callbacks
|
|
80
|
-
- `rerender-lazy-state-init` - Pass function to useState for expensive values
|
|
81
|
-
- `rerender-simple-expression-in-memo` - Avoid memo for simple primitives
|
|
82
|
-
- `rerender-move-effect-to-event` - Put interaction logic in event handlers
|
|
83
|
-
- `rerender-transitions` - Use startTransition for non-urgent updates
|
|
84
|
-
- `rerender-use-ref-transient-values` - Use refs for transient frequent values
|
|
85
|
-
|
|
86
|
-
### 6. Rendering Performance (MEDIUM)
|
|
87
|
-
|
|
88
|
-
- `rendering-animate-svg-wrapper` - Animate div wrapper, not SVG element
|
|
89
|
-
- `rendering-content-visibility` - Use content-visibility for long lists
|
|
90
|
-
- `rendering-hoist-jsx` - Extract static JSX outside components
|
|
91
|
-
- `rendering-svg-precision` - Reduce SVG coordinate precision
|
|
92
|
-
- `rendering-hydration-no-flicker` - Use inline script for client-only data
|
|
93
|
-
- `rendering-hydration-suppress-warning` - Suppress expected mismatches
|
|
94
|
-
- `rendering-activity` - Use Activity component for show/hide
|
|
95
|
-
- `rendering-conditional-render` - Use ternary, not && for conditionals
|
|
96
|
-
- `rendering-usetransition-loading` - Prefer useTransition for loading state
|
|
97
|
-
|
|
98
|
-
### 7. JavaScript Performance (LOW-MEDIUM)
|
|
99
|
-
|
|
100
|
-
- `js-batch-dom-css` - Group CSS changes via classes or cssText
|
|
101
|
-
- `js-index-maps` - Build Map for repeated lookups
|
|
102
|
-
- `js-cache-property-access` - Cache object properties in loops
|
|
103
|
-
- `js-cache-function-results` - Cache function results in module-level Map
|
|
104
|
-
- `js-cache-storage` - Cache localStorage/sessionStorage reads
|
|
105
|
-
- `js-combine-iterations` - Combine multiple filter/map into one loop
|
|
106
|
-
- `js-length-check-first` - Check array length before expensive comparison
|
|
107
|
-
- `js-early-exit` - Return early from functions
|
|
108
|
-
- `js-hoist-regexp` - Hoist RegExp creation outside loops
|
|
109
|
-
- `js-min-max-loop` - Use loop for min/max instead of sort
|
|
110
|
-
- `js-set-map-lookups` - Use Set/Map for O(1) lookups
|
|
111
|
-
- `js-tosorted-immutable` - Use toSorted() for immutability
|
|
112
|
-
|
|
113
|
-
### 8. Advanced Patterns (LOW)
|
|
114
|
-
|
|
115
|
-
- `advanced-event-handler-refs` - Store event handlers in refs
|
|
116
|
-
- `advanced-init-once` - Initialize app once per app load
|
|
117
|
-
- `advanced-use-latest` - useLatest for stable callback refs
|
|
118
|
-
|
|
119
|
-
## How to Use
|
|
120
|
-
|
|
121
|
-
Read individual rule files for detailed explanations and code examples:
|
|
122
|
-
|
|
123
|
-
```
|
|
124
|
-
rules/async-parallel.md
|
|
125
|
-
rules/bundle-barrel-imports.md
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
Each rule file contains:
|
|
129
|
-
- Brief explanation of why it matters
|
|
130
|
-
- Incorrect code example with explanation
|
|
131
|
-
- Correct code example with explanation
|
|
132
|
-
- Additional context and references
|
|
133
|
-
|
|
134
|
-
## Full Compiled Document
|
|
135
|
-
|
|
136
|
-
For the complete guide with all rules expanded: `AGENTS.md`
|
|
46
|
+
- `async-*`
|
|
47
|
+
- `bundle-*`
|
|
48
|
+
- `server-*`
|
|
49
|
+
- `client-*`
|
|
50
|
+
- `rerender-*`
|
|
51
|
+
- `rendering-*`
|
|
52
|
+
- `js-*`
|
|
53
|
+
- `advanced-*`
|
|
@@ -1,87 +1,59 @@
|
|
|
1
1
|
````markdown
|
|
2
2
|
---
|
|
3
3
|
inclusion: manual
|
|
4
|
-
name: react-expert
|
|
5
|
-
description: "Use for framework-agnostic React
|
|
4
|
+
name: "react-expert"
|
|
5
|
+
description: "Use for framework-agnostic React architecture with React 19 patterns, state design, and performance tuning."
|
|
6
6
|
license: MIT
|
|
7
7
|
metadata:
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
scope: implementation
|
|
14
|
-
output-format: code
|
|
15
|
-
related-skills: fullstack-guardian, playwright-expert, test-master
|
|
8
|
+
version: "2.0.0"
|
|
9
|
+
domain: "frontend"
|
|
10
|
+
role: "specialist"
|
|
11
|
+
stack: "react"
|
|
12
|
+
baseline: "React 19"
|
|
16
13
|
---
|
|
17
14
|
|
|
18
15
|
# React Expert
|
|
19
16
|
|
|
20
|
-
|
|
17
|
+
## Scope
|
|
21
18
|
|
|
22
|
-
|
|
19
|
+
- Use this for React component and state architecture.
|
|
20
|
+
- Use `nextjs-developer` for Next.js routing/App Router specifics.
|
|
23
21
|
|
|
24
|
-
|
|
22
|
+
## When to use
|
|
25
23
|
|
|
26
|
-
|
|
24
|
+
- Building reusable component systems.
|
|
25
|
+
- Designing local/shared/remote state boundaries.
|
|
26
|
+
- Refactoring for rendering performance.
|
|
27
|
+
- Implementing robust form and async UI flows.
|
|
27
28
|
|
|
28
|
-
|
|
29
|
-
- Implementing state management (local, Context, Redux, Zustand)
|
|
30
|
-
- Optimizing React performance
|
|
31
|
-
- Setting up React project architecture
|
|
32
|
-
- Working with React 19 Server Components
|
|
33
|
-
- Implementing forms with React 19 actions
|
|
34
|
-
- Data fetching patterns with TanStack Query or `use()`
|
|
29
|
+
## Core workflow
|
|
35
30
|
|
|
36
|
-
|
|
31
|
+
1. Model component responsibilities and ownership boundaries.
|
|
32
|
+
2. Decide state location and mutation strategy.
|
|
33
|
+
3. Implement with accessible markup and predictable effects.
|
|
34
|
+
4. Measure rerender behavior before applying memoization.
|
|
35
|
+
5. Validate with component and interaction tests.
|
|
37
36
|
|
|
38
|
-
|
|
39
|
-
2. **Choose patterns** - Select appropriate state management, data fetching approach
|
|
40
|
-
3. **Implement** - Write TypeScript components with proper types
|
|
41
|
-
4. **Optimize** - Apply memoization where needed, ensure accessibility
|
|
42
|
-
5. **Test** - Write tests with React Testing Library
|
|
37
|
+
## Baseline standards
|
|
43
38
|
|
|
44
|
-
|
|
39
|
+
- Prefer pure render logic and explicit side-effect boundaries.
|
|
40
|
+
- Use transitions/suspense intentionally for UX.
|
|
41
|
+
- Keep effects idempotent and cleanup-safe.
|
|
42
|
+
- Derive state instead of duplicating it.
|
|
43
|
+
- Keep mutation logic centralized when state grows.
|
|
45
44
|
|
|
46
|
-
|
|
45
|
+
## Avoid
|
|
47
46
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
| React 19 | `references/react-19-features.md` | use() hook, useActionState, forms |
|
|
52
|
-
| State Management | `references/state-management.md` | Context, Zustand, Redux, TanStack |
|
|
53
|
-
| Hooks | `references/hooks-patterns.md` | Custom hooks, useEffect, useCallback |
|
|
54
|
-
| Performance | `references/performance.md` | memo, lazy, virtualization |
|
|
55
|
-
| Testing | `references/testing-react.md` | Testing Library, mocking |
|
|
56
|
-
| Class Migration | `references/migration-class-to-modern.md` | Converting class components to hooks/RSC |
|
|
47
|
+
- Blanket memoization without profiling evidence.
|
|
48
|
+
- Effect-driven derived state loops.
|
|
49
|
+
- Hidden shared mutable module state.
|
|
57
50
|
|
|
58
|
-
##
|
|
51
|
+
## Reference files
|
|
59
52
|
|
|
60
|
-
|
|
61
|
-
-
|
|
62
|
-
-
|
|
63
|
-
-
|
|
64
|
-
-
|
|
65
|
-
-
|
|
66
|
-
- Memoize when passing callbacks/objects to memoized children
|
|
67
|
-
- Use Suspense boundaries for async operations
|
|
68
|
-
|
|
69
|
-
### MUST NOT DO
|
|
70
|
-
- Mutate state directly
|
|
71
|
-
- Use array index as key for dynamic lists
|
|
72
|
-
- Create functions inside JSX (causes re-renders)
|
|
73
|
-
- Forget useEffect cleanup (memory leaks)
|
|
74
|
-
- Ignore React strict mode warnings
|
|
75
|
-
- Skip error boundaries in production
|
|
76
|
-
|
|
77
|
-
## Output Templates
|
|
78
|
-
|
|
79
|
-
When implementing React features, provide:
|
|
80
|
-
1. Component file with TypeScript types
|
|
81
|
-
2. Test file if non-trivial logic
|
|
82
|
-
3. Brief explanation of key decisions
|
|
83
|
-
|
|
84
|
-
## Knowledge Reference
|
|
85
|
-
|
|
86
|
-
React 19, Server Components, use() hook, Suspense, TypeScript, TanStack Query, Zustand, Redux Toolkit, React Router, React Testing Library, Vitest/Jest, Next.js App Router, accessibility (WCAG)
|
|
53
|
+
- `references/react-19-features.md`
|
|
54
|
+
- `references/hooks-patterns.md`
|
|
55
|
+
- `references/state-management.md`
|
|
56
|
+
- `references/performance.md`
|
|
57
|
+
- `references/testing-react.md`
|
|
58
|
+
- `references/server-components.md`
|
|
87
59
|
````
|
|
@@ -1,84 +1,56 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: react-expert
|
|
3
|
-
description: "Use for framework-agnostic React
|
|
2
|
+
name: "react-expert"
|
|
3
|
+
description: "Use for framework-agnostic React architecture with React 19 patterns, state design, and performance tuning."
|
|
4
4
|
license: MIT
|
|
5
5
|
metadata:
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
scope: implementation
|
|
12
|
-
output-format: code
|
|
13
|
-
related-skills: fullstack-guardian, playwright-expert, test-master
|
|
6
|
+
version: "2.0.0"
|
|
7
|
+
domain: "frontend"
|
|
8
|
+
role: "specialist"
|
|
9
|
+
stack: "react"
|
|
10
|
+
baseline: "React 19"
|
|
14
11
|
---
|
|
15
12
|
|
|
16
13
|
# React Expert
|
|
17
14
|
|
|
18
|
-
|
|
15
|
+
## Scope
|
|
19
16
|
|
|
20
|
-
|
|
17
|
+
- Use this for React component and state architecture.
|
|
18
|
+
- Use `nextjs-developer` for Next.js routing/App Router specifics.
|
|
21
19
|
|
|
22
|
-
|
|
20
|
+
## When to use
|
|
23
21
|
|
|
24
|
-
|
|
22
|
+
- Building reusable component systems.
|
|
23
|
+
- Designing local/shared/remote state boundaries.
|
|
24
|
+
- Refactoring for rendering performance.
|
|
25
|
+
- Implementing robust form and async UI flows.
|
|
25
26
|
|
|
26
|
-
|
|
27
|
-
- Implementing state management (local, Context, Redux, Zustand)
|
|
28
|
-
- Optimizing React performance
|
|
29
|
-
- Setting up React project architecture
|
|
30
|
-
- Working with React 19 Server Components
|
|
31
|
-
- Implementing forms with React 19 actions
|
|
32
|
-
- Data fetching patterns with TanStack Query or `use()`
|
|
27
|
+
## Core workflow
|
|
33
28
|
|
|
34
|
-
|
|
29
|
+
1. Model component responsibilities and ownership boundaries.
|
|
30
|
+
2. Decide state location and mutation strategy.
|
|
31
|
+
3. Implement with accessible markup and predictable effects.
|
|
32
|
+
4. Measure rerender behavior before applying memoization.
|
|
33
|
+
5. Validate with component and interaction tests.
|
|
35
34
|
|
|
36
|
-
|
|
37
|
-
2. **Choose patterns** - Select appropriate state management, data fetching approach
|
|
38
|
-
3. **Implement** - Write TypeScript components with proper types
|
|
39
|
-
4. **Optimize** - Apply memoization where needed, ensure accessibility
|
|
40
|
-
5. **Test** - Write tests with React Testing Library
|
|
35
|
+
## Baseline standards
|
|
41
36
|
|
|
42
|
-
|
|
37
|
+
- Prefer pure render logic and explicit side-effect boundaries.
|
|
38
|
+
- Use transitions/suspense intentionally for UX.
|
|
39
|
+
- Keep effects idempotent and cleanup-safe.
|
|
40
|
+
- Derive state instead of duplicating it.
|
|
41
|
+
- Keep mutation logic centralized when state grows.
|
|
43
42
|
|
|
44
|
-
|
|
43
|
+
## Avoid
|
|
45
44
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
| React 19 | `references/react-19-features.md` | use() hook, useActionState, forms |
|
|
50
|
-
| State Management | `references/state-management.md` | Context, Zustand, Redux, TanStack |
|
|
51
|
-
| Hooks | `references/hooks-patterns.md` | Custom hooks, useEffect, useCallback |
|
|
52
|
-
| Performance | `references/performance.md` | memo, lazy, virtualization |
|
|
53
|
-
| Testing | `references/testing-react.md` | Testing Library, mocking |
|
|
54
|
-
| Class Migration | `references/migration-class-to-modern.md` | Converting class components to hooks/RSC |
|
|
45
|
+
- Blanket memoization without profiling evidence.
|
|
46
|
+
- Effect-driven derived state loops.
|
|
47
|
+
- Hidden shared mutable module state.
|
|
55
48
|
|
|
56
|
-
##
|
|
49
|
+
## Reference files
|
|
57
50
|
|
|
58
|
-
|
|
59
|
-
-
|
|
60
|
-
-
|
|
61
|
-
-
|
|
62
|
-
-
|
|
63
|
-
-
|
|
64
|
-
- Memoize when passing callbacks/objects to memoized children
|
|
65
|
-
- Use Suspense boundaries for async operations
|
|
66
|
-
|
|
67
|
-
### MUST NOT DO
|
|
68
|
-
- Mutate state directly
|
|
69
|
-
- Use array index as key for dynamic lists
|
|
70
|
-
- Create functions inside JSX (causes re-renders)
|
|
71
|
-
- Forget useEffect cleanup (memory leaks)
|
|
72
|
-
- Ignore React strict mode warnings
|
|
73
|
-
- Skip error boundaries in production
|
|
74
|
-
|
|
75
|
-
## Output Templates
|
|
76
|
-
|
|
77
|
-
When implementing React features, provide:
|
|
78
|
-
1. Component file with TypeScript types
|
|
79
|
-
2. Test file if non-trivial logic
|
|
80
|
-
3. Brief explanation of key decisions
|
|
81
|
-
|
|
82
|
-
## Knowledge Reference
|
|
83
|
-
|
|
84
|
-
React 19, Server Components, use() hook, Suspense, TypeScript, TanStack Query, Zustand, Redux Toolkit, React Router, React Testing Library, Vitest/Jest, Next.js App Router, accessibility (WCAG)
|
|
51
|
+
- `references/react-19-features.md`
|
|
52
|
+
- `references/hooks-patterns.md`
|
|
53
|
+
- `references/state-management.md`
|
|
54
|
+
- `references/performance.md`
|
|
55
|
+
- `references/testing-react.md`
|
|
56
|
+
- `references/server-components.md`
|