vercel-composition-patterns

Refactors React components using compound components, context providers, and composition patterns.

Updated Apr 7, 2026
One-click install
npx skills add https://github.com/NT-boop-star/BRMV-tract --skill vercel-composition-patterns-nt-boop-star
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: vercel-composition-patterns
Source: https://github.com/NT-boop-star/BRMV-tract/tree/main/antigravity/skills/composition-patterns
Command: npx skills add https://github.com/NT-boop-star/BRMV-tract --skill vercel-composition-patterns-nt-boop-star

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? React components often accumulate boolean props like isThread or isEditing, creating exponential state combinations and unmaintainable conditional logic. This Skill provides structured patterns to replace prop proliferation with composition, making component codebases easier to maintain and extend. ## Core Features & Use Cases - Compound Component Architecture: Structure complex components with shared context so subcomponents access state without prop drilling. - State Lifting and Dependency Injection: Move state into provider components with generic state/actions/meta interfaces, letting the same UI work with different state implementations. - Explicit Variants and React 19 APIs: Create self-documenting variant components instead of boolean modes, and apply React 19 changes like ref-as-prop and use() instead of useContext(). - Use Case: When refactoring a message composer that has grown to accept isThread, isEditing, and isDMThread props, apply these rules to split it into ThreadComposer, EditComposer, and ChannelComposer variants sharing compound internals. ## Quick Start Ask the AI to refactor a React component with many boolean props into compound components with a shared context provider.

Frequently Asked Questions about vercel-composition-patterns

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I refactor React components with too many boolean props?

Replace boolean props with composition by creating explicit variant components like ThreadComposer or EditComposer. Each variant composes shared compound component pieces, eliminating conditional logic and impossible states.

What are compound components in React?

Compound components are structured as a parent provider with subcomponents that access shared state via context instead of props. Consumers compose exactly the pieces they need, such as Composer.Frame, Composer.Input, and Composer.Submit.

When should I use children instead of render props in React?

Use children when composing static structure because they are more readable and compose naturally. Use render props only when the parent needs to pass data or state back to the child, such as rendering list items.

Does React 19 still require forwardRef?

No, React 19 makes ref a regular prop, so forwardRef is unnecessary. The use() hook also replaces useContext() and can be called conditionally, unlike useContext.

How do I share React state with components outside the main UI?

Lift state into a provider component so any descendant can access it via context, even if not visually nested inside the main component. This avoids prop drilling, useEffect syncing, and ref-based state reading.