plugins/frontend/skills/core-principles/SKILL.md
Use when planning new projects, onboarding, or reviewing architectural decisions. Core principles and project structure for React 19 SPA development. Covers stack overview, project organization, agent execution rules, and authoritative sources.
npx skillsauth add madappgang/claude-code core-principlesInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Production-ready best practices for building modern React applications with TypeScript, Vite, and TanStack ecosystem.
/src
/app/ # App shell, providers, global styles
/routes/ # TanStack Router file-based routes
/components/ # Reusable, pure UI components (no data-fetch)
/features/ # Feature folders (UI + hooks local to a feature)
/api/ # Generated API types & client (from OpenAPI)
/lib/ # Utilities (zod schemas, date, formatting, etc.)
/test/ # Test utilities
Key Principles:
Always do this when you add or modify code:
API Spec: Fetch latest via Apidog MCP and regenerate /src/api types if changed
Data Access: Wire only through feature hooks that wrap TanStack Query. Never fetch inside UI components.
New Routes:
/src/routes/** (file-based routing)Server Mutations:
useMutation (choose one per feature)useOptimistic (Actions) or Query's optimistic updatesCompiler-Friendly:
"use no memo" temporarilyTests:
Before Committing:
biome check --writeas const), staleTime/gcTime tuned/src/api; inputs/outputs validated at boundariesbiome check --write clean; Vite build okReact 19 & Compiler:
<form action> / Actions API; useOptimistic; useVite:
TypeScript:
moduleResolution: "bundler" (for bundlers like Vite)Biome:
TanStack Query:
TanStack Router:
Vitest:
Apidog + MCP:
testing
A test skill for validation testing. Use when testing skill parsing and validation logic.
tools
--- name: bad-skill description: This skill has invalid YAML in frontmatter allowed-tools: [invalid, array, syntax prerequisites: not-an-array --- # Bad Skill This skill has malformed frontmatter that should fail parsing. The YAML has: - Unclosed array bracket - Wrong type for prerequisites (should be array, not string)
tools
Plugin release process for MAG Claude Plugins marketplace. Covers version bumping, marketplace.json updates, git tagging, and common mistakes. Use when releasing new plugin versions or troubleshooting update issues.
testing
Fetch trending programming models from OpenRouter rankings. Use when selecting models for multi-model review, updating model recommendations, or researching current AI coding trends. Provides model IDs, context windows, pricing, and usage statistics from the most recent week.