modèles-de-composition-react

Modèles de composition React qui passent à l'échelle. À utiliser lors du refactoring de composants avec de nombreuses props booléennes ou lors de la conception d'APIs de composants flexibles.

Qu'est-ce que modèles-de-composition-react ?

Ce skill fournit un ensemble de modèles de composition React éprouvés pour construire des composants flexibles et maintenables. Il aide les développeurs et les agents IA à éviter la prolifération de props booléennes en utilisant des composés (compound components), le levage d'état (lifting state) et la composition des internes. Le skill couvre quatre catégories de règles, de l'architecture des composants (haute priorité) à la gestion d'état, aux modèles d'implémentation et aux API React 19. Il inclut des conventions de nommage (préfixes comme `architecture-`, `state-`), des exemples de code, et des fichiers de règles détaillés pour guider le refactoring. Il est compatible avec tous les environnements React (version 18 ou 19), et fonctionne aussi bien avec Claude Code, Cursor, que d'autres assistants de codage basés sur l'IA.

Compatible avec~Claude Code~Codex CLI~Cursor
Part ofReact
npx skills add https://github.com/vercel-labs/agent-skills/tree/main/skills/composition-patterns

Installed? Explore more Développement et programmation skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Modèles de Composition React

Modèles de composition pour construire des composants React flexibles et maintenables. Évitez la prolifération de props booléennes en utilisant des composés (compound components), le levage d'état (lifting state) et la composition des internes. Ces modèles rendent les bases de code plus faciles à utiliser, tant pour les humains que pour les agents IA, à mesure qu'elles passent à l'échelle.

Quand appliquer

Consultez ces directives lorsque :

  • Vous refactorez des composants avec de nombreuses props booléennes
  • Vous construisez des bibliothèques de composants réutilisables
  • Vous concevez des API de composants flexibles
  • Vous révisez l'architecture de composants
  • Vous travaillez avec des composés ou des fournisseurs de contexte

Catégories de règles par priorité

PrioritéCatégorieImpactPréfixe
1Architecture des composantsÉLEVÉarchitecture-
2Gestion d'étatMOYENstate-
3Modèles d'implémentationMOYENpatterns-
4API React 19MOYENreact19-

Référence rapide

1. Architecture des composants (ÉLEVÉ)

  • architecture-eviter-props-booleennes - N'ajoutez pas de props booléennes pour personnaliser le comportement ; utilisez la composition.
  • architecture-composés - Structurez les composants complexes avec un contexte partagé.

2. Gestion d'état (MOYEN)

  • état-découpler-implémentation - Le fournisseur (provider) est le seul endroit qui sait comment l'état est géré.
  • état-interface-contexte - Définissez une interface générique avec état, actions, métadonnées pour l'injection de dépendances.
  • état-lever-état - Déplacez l'état dans des composants fournisseurs pour un accès entre frères.

3. Modèles d'implémentation (MOYEN)

  • modèles-variantes-explicites - Créez des composants de variante explicites au lieu de modes booléens.
  • modèles-enfants-plutôt-que-render-props - Utilisez les enfants pour la composition au lieu des props renderX.

4. API React 19 (MOYEN)

⚠️ React 19+ uniquement. Ignorez cette section si vous utilisez React 18 ou une version antérieure.

  • react19-pas-de-forwardRef - N'utilisez pas forwardRef ; utilisez use() à la place de useContext().

Comment utiliser

Lisez les fichiers de règles individuels pour des explications détaillées et des exemples de code :

rules/architecture-eviter-props-booleennes.md
rules/état-interface-contexte.md

Chaque fichier de règle contient :

  • Une brève explication de pourquoi c'est important
  • Un exemple de code incorrect avec explication
  • Un exemple de code correct avec explication
  • Contexte supplémentaire et références

Document complet compilé

Pour le guide complet avec toutes les règles développées : AGENTS.md

Individual skills in this repo

This repo contains 11 individual skills — each has its own dedicated page.

deploy-to-vercel

Deploy applications and websites to Vercel. Use when the user requests deployment actions like "deploy my app", "deploy and give me the link", "push this live", or "create a preview deployment".

vercel-cli-with-tokens

Deploy and manage projects on Vercel using token-based authentication. Use when working with Vercel CLI using access tokens rather than interactive login — e.g.

vercel-labs/vercel-composition-patterns

React composition patterns that scale. Use when refactoring components with boolean prop proliferation, building flexible component libraries, or designing reusable APIs. Triggers on tasks involving compound components, render props, context providers, or component architecture. Includes React 19 API changes.

vercel-labs/vercel-react-best-practices

React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.

vercel-labs/vercel-react-native-skills

React Native and Expo best practices for building performant mobile apps. Use when building React Native components, optimizing list performance, implementing animations, or working with native modules. Triggers on tasks involving React Native, Expo, mobile performance, or native platform APIs.

vercel-labs/vercel-react-view-transitions

Guide for implementing smooth, native-feeling animations using React's View Transition API (`<ViewTransition>` component, `addTransitionType`, and CSS view transition pseudo-elements). Use this skill whenever the user wants to add page transitions, animate route changes, create shared element animations, animate enter/exit of components, animate list reorder, implement directional (forward/back) navigation animations, or integrate view transitions in Next.js. Also use when the user mentions view transitions, `startViewTransition`, `ViewTransition`, transition types, or asks about animating between UI states in React without third-party animation libraries.

vercel-optimize

Use for Vercel cost and performance optimization on deployed projects, especially Next.js, SvelteKit, Nuxt, and limited Astro apps. Collect Vercel metrics, usage, project config, and code scan results first; investigate only metric-backed candidates; produce ranked recommendations grounded in verified files and version-aware Vercel/framework docs. Trigger for Vercel bill reduction, slow or expensive routes, caching opportunities, Function Invocations, Build Minutes, Fast Data Transfer, Core Web Vitals, Bot Management, Fluid compute, or cost breakdown requests.

vercel-react-best-practices

React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.

vercel-react-native-skills

React Native and Expo best practices for building performant mobile apps. Use

web-design-guidelines

Review UI code for Web Interface Guidelines compliance. Use when asked to

writing-guidelines

Review docs/prose for Writing Guidelines compliance. Use when asked to

Skills associés