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
Priority
Category
Impact
Prefix
1
Component Architecture
HIGH
architecture-
2
State Management
MEDIUM
state-
3
Implementation Patterns
MEDIUM
patterns-
4
React 19 APIs
MEDIUM
react19-
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:
For the complete guide with all rules expanded: AGENTS.md
1---2name: vercel-composition-patterns3description: 反应组成模式4---56# 反应组成模式78Composition patterns for building flexible, maintainable React components. Avoid9boolean prop proliferation by using compound components, lifting state, and10composing internals. These patterns make codebases easier for both humans and AI11agents to work with as they scale.1213## When to Apply1415Reference these guidelines when:1617- Refactoring components with many boolean props18- Building reusable component libraries19- Designing flexible component APIs20- Reviewing component architecture21- Working with compound components or context providers2223## Rule Categories by Priority2425| Priority | Category | Impact | Prefix |26| -------- | ----------------------- | ------ | --------------- |27| 1 | Component Architecture | HIGH | `architecture-` |28| 2 | State Management | MEDIUM | `state-` |29| 3 | Implementation Patterns | MEDIUM | `patterns-` |30| 4 | React 19 APIs | MEDIUM | `react19-` |3132## Quick Reference3334### 1. Component Architecture (HIGH)3536- `architecture-avoid-boolean-props` - Don't add boolean props to customize37 behavior; use composition38- `architecture-compound-components` - Structure complex components with shared39 context4041### 2. State Management (MEDIUM)4243- `state-decouple-implementation` - Provider is the only place that knows how44 state is managed45- `state-context-interface` - Define generic interface with state, actions, meta46 for dependency injection47- `state-lift-state` - Move state into provider components for sibling access4849### 3. Implementation Patterns (MEDIUM)5051- `patterns-explicit-variants` - Create explicit variant components instead of52 boolean modes53- `patterns-children-over-render-props` - Use children for composition instead54 of renderX props5556### 4. React 19 APIs (MEDIUM)5758> **⚠️ React 19+ only.** Skip this section if using React 18 or earlier.5960- `react19-no-forwardref` - Don't use `forwardRef`; use `use()` instead of `useContext()`6162## How to Use6364Read individual rule files for detailed explanations and code examples:6566```67rules/architecture-avoid-boolean-props.md68rules/state-context-interface.md69```7071Each rule file contains:7273- Brief explanation of why it matters74- Incorrect code example with explanation75- Correct code example with explanation76- Additional context and references7778## Full Compiled Document7980For the complete guide with all rules expanded: `AGENTS.md`
Run npx skillmds@latest add makerjackie/vercel-composition-patterns in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
反应组成模式 It is listed under Coding & Dev Tools on SkillMD.
This skill has not completed SkillMD's automated safety review yet. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free, and the skill stays under its author's original license.
makerjackie (@makerjackie) published this skill. Their other Agent Skills are listed on their SkillMD profile.