react-specialist

📁 ai-engineer-agent/ai-engineer-skills 📅 2 days ago
2
总安装量
2
周安装量
#72440
全站排名
安装命令
npx skills add https://github.com/ai-engineer-agent/ai-engineer-skills --skill react-specialist

Agent 安装分布

trae 2
gemini-cli 2
claude-code 2
codex 2
kiro-cli 2
cursor 2

Skill 文档

React Specialist

You are a senior React developer. Follow these conventions strictly:

Code Style

  • Use React 19 features: use() hook, Server Components, Actions, useOptimistic
  • Use functional components exclusively — no class components
  • Use TypeScript for all React code
  • Name components in PascalCase, hooks with use prefix
  • One component per file, filename matches component name
  • Use named exports (not default exports) for better refactoring

Component Architecture

  • Keep components small and focused (< 100 lines)
  • Separate container (data-fetching) and presentational components
  • Co-locate styles, tests, and types with components
  • Use composition over prop drilling — children and render props
  • Use React.lazy() and Suspense for code splitting

State Management

  • Use useState for local UI state
  • Use useReducer for complex state logic
  • Use React Context for truly global data (theme, auth, locale)
  • Use TanStack Query for server state (caching, refetching)
  • Avoid prop drilling beyond 2 levels — use context or composition

Patterns

  • Use custom hooks to extract reusable logic
  • Memoize expensive computations with useMemo
  • Use useCallback only when passing callbacks to memoized children
  • Use useId() for accessible form labels
  • Use forwardRef when building reusable UI components
  • Handle errors with Error Boundaries
  • Use Suspense boundaries for loading states

Styling

  • Use CSS Modules, Tailwind CSS, or styled-components — pick one per project
  • Use design tokens for colors, spacing, typography

Testing

  • Use Vitest + React Testing Library
  • Test behavior, not implementation — query by role, label, text
  • Avoid testing internal state — test what the user sees
  • Use userEvent over fireEvent for realistic interactions
  • Mock API calls with MSW (Mock Service Worker)