PluginBench
Skill
Review
Audit score 70

react-refactor

pproenca/dot-skills

How to install react-refactor

npx skills add https://github.com/pproenca/dot-skills --skill react-refactor
Claude Code
Cursor
Windsurf
Cline
Full instructions (SKILL.md)

Source of truth, from pproenca/dot-skills.


name: react-refactor description: Architectural refactoring guide for React applications covering component architecture, state architecture, hook patterns, component decomposition, coupling and cohesion, data flow, and refactoring safety. Use when refactoring React codebases, reviewing PRs for architectural issues, decomposing oversized components, or improving module boundaries. Does NOT cover React 19 API usage (see react skill) or performance optimization (see react-optimise skill).

React Refactor Best Practices

Architectural refactoring guide for React applications. Contains 40 rules across 7 categories, prioritized by impact from critical (component and state architecture) to incremental (refactoring safety).

When to Apply

  • Refactoring existing React codebases or planning large-scale restructuring
  • Reviewing PRs for architectural issues and code smells
  • Decomposing oversized components into focused units
  • Extracting reusable hooks from component logic
  • Improving testability of React code
  • Reducing coupling between feature modules

Rule Categories

CategoryImpactRulesKey Topics
Component ArchitectureCRITICAL8Compound components, headless pattern, composition over props, client boundaries
State ArchitectureCRITICAL7Colocation, state machines, URL state, derived values
Hook PatternsHIGH6Single responsibility, naming, dependency stability, composition
Component DecompositionHIGH6Scroll test, extraction by change reason, view/logic separation
Coupling & CohesionMEDIUM4Dependency injection, circular deps, stable imports, barrel-free
Data & Side EffectsMEDIUM4Server-first fetch, TanStack Query, error boundaries
Refactoring SafetyLOW-MEDIUM5Characterization tests, behavior testing, integration tests

Quick Reference

Critical patterns — get these right first:

  • Use compound components instead of props explosion
  • Colocate state with the components that use it
  • Use state machines for complex UI workflows
  • Separate container logic from presentational components

Common mistakes — avoid these anti-patterns:

  • Lifting state to App when only one component reads it
  • Using context for rapidly-changing values
  • Monolithic hooks that fetch + transform + cache
  • Testing implementation details instead of behavior

Table of Contents

  1. Component ArchitectureCRITICAL
  2. State ArchitectureCRITICAL
  3. Hook PatternsHIGH
  4. Component DecompositionHIGH
  5. Coupling & CohesionMEDIUM
  6. Data & Side EffectsMEDIUM
  7. Refactoring SafetyLOW-MEDIUM

References

  1. https://react.dev
  2. https://react.dev/learn/thinking-in-react
  3. https://kentcdodds.com/blog/application-state-management-with-react
  4. https://testing-library.com/docs/guiding-principles
  5. https://patterns.dev

Related Skills

  • For React 19 API best practices, see react skill
  • For application performance optimization, see react-optimise skill
  • For client-side form handling, see react-hook-form skill

Related skills

More from pproenca/dot-skills and the wider catalog.

SHshadcn logo

shadcn

pproenca/dot-skills

shadcn/ui component library best practices and patterns (formerly shadcn-ui). This skill should be used when writing, reviewing, or refactoring shadcn/ui components to ensure proper architecture, accessibility, and performance. Triggers on tasks involving Radix primitives, Tailwind styling, form validation with React Hook Form, data tables, theming, or component composition patterns.

622 installs
TEterminal-ui logo

terminal-ui

pproenca/dot-skills

Terminal User Interface (TUI) performance and UX guidelines for TypeScript applications using Ink and Clack. This skill should be used when building CLI tools, interactive terminal prompts, or developer tooling with TUI components. Triggers on tasks involving TUI components, CLI prompts, terminal rendering, keyboard input handling, or developer tooling.

636 installs
TYtypescript logo

typescript

pproenca/dot-skills

TypeScript performance, tsconfig, type errors, async patterns — triggered when the user asks to "optimize TypeScript performance", "speed up tsc compilation", "configure tsconfig.json", "fix type errors", "improve async patterns", or encounters TS errors (TS2322, TS2339, "is not assignable to"). Also triggers on .ts, .tsx, .d.ts file work involving type definitions, module organization, or memory management. Does NOT cover TypeScript basics, framework-specific patterns, or testing.

1.0k installsAudited
UIui-design logo

ui-design

pproenca/dot-skills

UI/UX and frontend design best practices guidelines (formerly frontend-design). This skill should be used when writing, reviewing, or designing frontend code to ensure accessibility, performance, and usability. Triggers on tasks involving HTML structure, CSS styling, responsive layouts, form design, animations, or accessibility improvements.

640 installsAudited
VIvitest logo

vitest

pproenca/dot-skills

Vitest testing framework patterns for test setup, async testing, mocking with vi.*, snapshots, and test performance (formerly test-vitest). This skill should be used when writing or debugging Vitest tests. This skill does NOT cover TDD methodology (use test-tdd skill), API mocking with MSW (use test-msw skill), or Jest-specific APIs.

1.1k installsAudited
WXwxt-browser-extensions logo

wxt-browser-extensions

pproenca/dot-skills

WXT browser extension performance optimization guidelines. This skill should be used when writing, reviewing, or refactoring WXT browser extension code to ensure optimal performance patterns. Triggers on tasks involving WXT, browser extensions, content scripts, service workers, messaging, and extension APIs.

759 installs