MR
Mayur Rathi
@mayurrathi
⭐ 40.7k GitHub stars

React Patterns

React Patterns is an code AI skill with a core value of Modern React patterns and principles. It helps developers solve real-world problems in the code domain, boosting efficiency, automating repetitive tasks, and optimizing workflows.

Modern React patterns and principles. Hooks, composition, performance, TypeScript best practices.

Last verified on: 2026-07-07

Quick Facts

Category code
Works With Claude
Source sickn33/antigravity-awesome-skills
Stars ⭐ 40.7k
Last Verified 2026-07-07
Risk Level Low
mkdir -p ./skills/react-patterns && curl -sfL https://raw.githubusercontent.com/sickn33/antigravity-awesome-skills/main/skills/react-patterns/SKILL.md -o ./skills/react-patterns/SKILL.md

Run in terminal / PowerShell. Requires curl (Unix) or PowerShell 5+ (Windows).

Skill Content

# React Patterns


> Principles for building production-ready React applications.


---


1. Component Design Principles


Component Types


| Type | Use | State |

|------|-----|-------|

| **Server** | Data fetching, static | None |

| **Client** | Interactivity | useState, effects |

| **Presentational** | UI display | Props only |

| **Container** | Logic/state | Heavy state |


Design Rules


- One responsibility per component

- Props down, events up

- Composition over inheritance

- Prefer small, focused components


---


2. Hook Patterns


When to Extract Hooks


| Pattern | Extract When |

|---------|-------------|

| **useLocalStorage** | Same storage logic needed |

| **useDebounce** | Multiple debounced values |

| **useFetch** | Repeated fetch patterns |

| **useForm** | Complex form state |


Hook Rules


- Hooks at top level only

- Same order every render

- Custom hooks start with "use"

- Clean up effects on unmount


---


3. State Management Selection


| Complexity | Solution |

|------------|----------|

| Simple | useState, useReducer |

| Shared local | Context |

| Server state | React Query, SWR |

| Complex global | Zustand, Redux Toolkit |


State Placement


| Scope | Where |

|-------|-------|

| Single component | useState |

| Parent-child | Lift state up |

| Subtree | Context |

| App-wide | Global store |


---


4. React 19 Patterns


New Hooks


| Hook | Purpose |

|------|---------|

| **useActionState** | Form submission state |

| **useOptimistic** | Optimistic UI updates |

| **use** | Read resources in render |


Compiler Benefits


- Automatic memoization

- Less manual useMemo/useCallback

- Focus on pure components


---


5. Composition Patterns


Compound Components


- Parent provides context

- Children consume context

- Flexible slot-based composition

- Example: Tabs, Accordion, Dropdown


Render Props vs Hooks


| Use Case | Prefer |

|----------|--------|

| Reusable logic | Custom hook |

| Render flexibility | Render props |

| Cross-cutting | Higher-order component |


---


6. Performance Principles


When to Optimize


| Signal | Action |

|--------|--------|

| Slow renders | Profile first |

| Large lists | Virtualize |

| Expensive calc | useMemo |

| Stable callbacks | useCallback |


Optimization Order


1. Check if actually slow

2. Profile with DevTools

3. Identify bottleneck

4. Apply targeted fix


---


7. Error Handling


Error Boundary Usage


| Scope | Placement |

|-------|-----------|

| App-wide | Root level |

| Feature | Route/feature level |

| Component | Around risky component |


Error Recovery


- Show fallback UI

- Log error

- Offer retry option

- Preserve user data


---


8. TypeScript Patterns


Props Typing


| Pattern | Use |

|---------|-----|

| Interface | Component props |

| Type | Unions, complex |

| Generic | Reusable components |


Common Types


| Need | Type |

|------|------|

| Children | ReactNode |

| Event handler | MouseEventHandler |

| Ref | RefObject<Element> |


---


9. Testing Principles


| Level | Focus |

|-------|-------|

| Unit | Pure functions, hooks |

| Integration | Component behavior |

| E2E | User flows |


Test Priorities


- User-visible behavior

- Edge cases

- Error states

- Accessibility


---


10. Anti-Patterns


| ❌ Don't | ✅ Do |

|----------|-------|

| Prop drilling deep | Use context |

| Giant components | Split smaller |

| useEffect for everything | Server components |

| Premature optimization | Profile first |

| Index as key | Stable unique ID |


---


> **Remember:** React is about composition. Build small, combine thoughtfully.


When to Use

This skill is applicable to execute the workflow or actions described in the overview.

🎯 Best For

  • Claude users
  • Software engineers
  • Development teams
  • Tech leads

💡 Use Cases

  • TypeScript type safety checking
  • Module refactoring

📖 How to Use This Skill

  1. 1

    Install the Skill

    Copy the install command from the Terminal tab and run it. The SKILL.md file downloads to your local skills directory.

  2. 2

    Load into Your AI Assistant

    Open Claude and reference the skill. Paste the SKILL.md content or use the system prompt tab.

  3. 3

    Apply React Patterns to Your Work

    Open your project in the AI assistant and ask it to apply the skill. Start with a small module to verify the output quality.

  4. 4

    Review and Refine

    Review AI suggestions before committing. Run tests, check for regressions, and iterate on the skill output.

❓ Frequently Asked Questions

Is React Patterns compatible with Cursor and VS Code?

Yes — this skill works with any AI coding assistant including Cursor, VS Code with Copilot, and JetBrains IDEs.

Do I need specific dependencies for React Patterns?

Check the install command and Works With section. Most code skills only require the AI assistant and your codebase.

How do I install React Patterns?

Copy the install command from the Terminal tab and run it. The skill downloads to ./skills/react-patterns/SKILL.md, ready to use.

Can I customize this skill for my team?

Absolutely. Edit the SKILL.md file to add team-specific instructions, examples, or workflows.

⚠️ Common Mistakes to Avoid

Skipping validation

Always test AI-generated code changes, even for simple refactors.

Missing dependency updates

Check if the skill requires updated dependencies or new packages.

🔗 Related Skills