skills/react/SKILL.md
React patterns: Zustand state management, shadcn/ui + Tailwind CSS, React Three Fiber + Drei for 3D, folder structure, data fetching, and TypeScript conventions. Load when working on React projects (*.tsx) without SvelteKit.
npx skillsauth add cloudvoyant/codevoyant reactInstall 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.
Patterns for React 19 + TypeScript + Vite apps. Strict tsconfig, feature-sliced src/, TanStack Query over a typed openapi-fetch client, Zod-validated forms, Zustand for UI state, shadcn/ui + Tailwind v4, and React Three Fiber + Drei for 3D scenes.
| You are working on… | Load recipe |
|---|---|
| New React + Vite project setup | references/recipes/project-config.md |
| Feature folder structure | references/recipes/folder-structure.md |
| Zustand store | references/recipes/zustand.md |
| shadcn/ui components or Tailwind CSS | references/recipes/shadcn-tailwind.md |
| React Three Fiber / Drei 3D scene | references/recipes/drei-threejs.md |
| Data fetching, forms, Zod validation | references/recipes/data-fetching.md |
Load project-config.md + folder-structure.md for any new React project. The shadcn/Tailwind, Drei, and data-fetching recipes assume the project-config baseline (strict tsconfig, ~/* alias, ESLint flat config) is already in place.
tsconfig.json with verbatimModuleSyntax, noUncheckedIndexedAccess, erasableSyntaxOnly, paths: { "~/*": ["./src/*"] }no-restricted-imports patterns: ~/features/*)src/ splits into features/<feature>/ (business domains) and shared/ (cross-cutting code)useWidgets, useEditorSession) are the feature's public API — routes consume features through hooks, not by reaching into componentsopenapi-typescript; friendly names are re-derived in *-api-types.tsz.infer<typeof schema> — never hand-writtencn() (clsx + tailwind-merge) and cva() variant maps — Tailwind utilities reference theme tokens (bg-primary), never literal colorsreact 19, react-dom 19, @types/react 19, TypeScript ~5.9@tailwindcss/vite (no tailwind.config.js)@tanstack/react-query 5, openapi-fetch 0.15, openapi-typescript 7zustand 5 with zustand/middleware (persist) + zustand/middleware/immerreact-hook-form 7, @hookform/resolvers 5, zod v4radix-ui, lucide-react, class-variance-authority, clsx, tailwind-merge, shadcn (new-york style)three ~0.182, @react-three/fiber ^9, @react-three/drei ^10 (versions pinned together)development
QA workflows: investigate and document bugs, post issues to GitHub/GitLab/Linear, and run browser-agent smoke tests. Triggers on: 'qa debug', 'qa report', 'qa smoke', 'run smoke test', 'report bug', 'investigate issue'.
tools
Python project patterns: uv package/workspace management, MLflow experiment tracking, Ray distributed computing, Nvidia Warp GPU kernels, Pydantic validation, Click CLIs, and service architecture. Load when writing Python with pyproject.toml or uv.lock.
development
Code review workflows: create a draft PR/MR, generate AI-powered inline review comments, address change requests, or complete a draft review. Triggers on: "pr open", "pr new", "pr review", "pr address", "pr complete", "open a PR", "create a draft PR", "code review", "pr mr", "pr this PR", "address pr comments", "fix review comments", "complete draft review", "publish review".
devops
ML engineering lifecycle: data pipelines with Ray Data, distributed training with Ray Train, model evaluation, TensorBoard observability, MLflow experiment tracking, and model publishing. Triggers on: "mle", "ml engineering", "data pipeline", "distributed training", "model evaluation", "mlflow", "tensorboard", "model publishing".