mcpField
V
vercel-composition-patterns

vercel-composition-patterns

Official
github.com/vercel-labsDesign & UI33.2k424.4k installsUpdated 1d ago
Repository

About vercel-composition-patterns

Vercel Composition Patterns is an agent skill maintained by Vercel that describes composition patterns for flexible, maintainable React components. It favors compound components and lifted state over boolean prop growth, and suits developers designing component libraries or reviewing component architecture.

Key features

  1. 01Rules to avoid boolean prop proliferation
  2. 02Compound components with shared context
  3. 03State lifting and provider-based state decoupling
  4. 04React 19 API rules requiring React 19 or later

Use cases

  1. 01Refactoring React components with many boolean props
  2. 02Designing APIs for reusable component libraries
  3. 03Reviewing component architecture and context provider usage

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/vercel-labs/agent-skills --skill vercel-composition-patterns

After installing, type/vercel-composition-patternsin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

AGENTS.md
metadata.json
README.md
rules/
_sections.md
_template.md
architecture-avoid-boolean-props.md
architecture-compound-components.md
patterns-children-over-render-props.md
patterns-explicit-variants.md
react19-no-forwardref.md
state-context-interface.md
state-decouple-implementation.md
state-lift-state.md

Details

From the project README

React Composition Patterns

Composition patterns for building flexible, maintainable React components. Avoid boolean prop proliferation by using compound components, lifting state, and composing internals. These patterns make codebases easier for both humans and AI agents to work with as they scale.

When to Apply

Reference these guidelines when:

  • Refactoring components with many boolean props
  • Building reusable component libraries
  • Designing flexible component APIs
  • Reviewing component architecture
  • Working with compound components or context providers

Rule Categories by Priority

PriorityCategoryImpactPrefix
1Component ArchitectureHIGHarchitecture-
2State ManagementMEDIUMstate-
3Implementation PatternsMEDIUMpatterns-
4React 19 APIsMEDIUMreact19-

Quick Reference

1. Component Architecture (HIGH)
  • architecture-avoid-boolean-props - Don't add boolean props to customize behavior; use composition
  • architecture-compound-components - Structure complex components with shared context
2. State Management (MEDIUM)
  • state-decouple-implementation - Provider is the only place that knows how state is managed
  • state-context-interface - Define generic interface with state, actions, meta for dependency injection
  • state-lift-state - Move state into provider components for sibling access
3. Implementation Patterns (MEDIUM)
  • patterns-explicit-variants - Create explicit variant components instead of boolean modes
  • patterns-children-over-render-props - Use children for composition instead of renderX props
4. React 19 APIs (MEDIUM)

⚠️ React 19+ only. Skip this section if using React 18 or earlier.

  • react19-no-forwardref - Don't use forwardRef; use use() instead of useContext()

How to Use

Read individual rule files for detailed explanations and code examples:

rules/architecture-avoid-boolean-props.md
rules/state-context-interface.md

Each rule file contains:

  • Brief explanation of why it matters
  • Incorrect code example with explanation
  • Correct code example with explanation
  • Additional context and references

Full Compiled Document

For the complete guide with all rules expanded: AGENTS.md

Comments

Markdown supported