react-component-governance

Opinionated React component architecture guidance for React projects. Use when reviewing or designing component boundaries, deciding whether UI should stay inline, become a local helper, become a component boundary, or become another boundary kind, classifying components as presentational, interactive, or container, applying compound, headless, or polymorphic patterns, setting packaging and ownership rules, or reasoning about providers, pages, forms, loading, and error shells.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "react-component-governance" with this command: npx skills add lutzseverino/governance-skills/lutzseverino-governance-skills-react-component-governance

React Component Governance

Make consistent React component architecture decisions without drifting into ad hoc local conventions.

Use $implementation-governance alongside this skill when the task also needs change-kind, scope, validation, contract-change, or escalation decisions beyond React boundary structure.

Workflow

  1. Decide whether a meaningful boundary should exist at all. Read references/workflow.md and references/extraction.md first when the question is whether UI should stay inline, become a local helper, become a component boundary, or become another boundary kind.

  2. Decide what kind of boundary the extraction creates. If the result is a component boundary, read references/classification.md to classify it as presentational, interactive, or container. If the result is a headless behavior boundary, provider/infrastructure boundary, or support boundary, keep that boundary kind explicit and do not force a component role onto it.

  3. Check boundary cases when the structure is not an ordinary reusable UI component. Read references/boundary-cases.md for providers, pages, form coordinators, and loading or error shells before finalizing classification, packaging, or ownership for those cases.

  4. Add optional patterns only when they strengthen the chosen role. Use references/patterns.md for compound, headless hook plus UI shell, and slot-based or polymorphic patterns.

  5. Decide packaging and ownership. Read references/packaging.md and references/ownership.md to determine folder shape, public API boundaries, local-first placement, and promotion rules for the chosen boundary.

Working Rules

  • Choose exactly one primary role only when the extracted boundary is a component boundary.
  • Use the canonical outcome terms consistently: inline, local helper, component boundary, headless behavior boundary, provider/infrastructure boundary, and support boundary.
  • Treat patterns as optional modifiers, not as replacements for responsibility.
  • Prefer local scope first. Shared abstractions must be earned by reuse or broader ownership.
  • Prefer the smallest boundary that improves clarity.
  • Do not treat same-owner support files on their own as evidence that a new component boundary is required.
  • Treat flat reusable packaging as an area-level convention, not as a per-component choice inside one local owner.
  • Prefer boundary-prefixed filenames for extracted support files so IDE and search discovery remain obvious.
  • Adapt filesystem examples to the repo you are in. Do not assume every project uses the same folder names.

Output Expectations

For a review, refactor plan, or implementation proposal:

  • state the boundary outcome: inline, local helper, component boundary, headless behavior boundary, provider/infrastructure boundary, or support boundary
  • state the classification: a primary role for a component boundary, or the explicit boundary kind for a non-component boundary
  • name any optional pattern only if it genuinely strengthens the chosen role or boundary
  • explain the intended packaging and ownership boundary
  • call out any relevant boundary-case reasoning

Use this response shape:

Boundary outcome: ...
Classification: ...
Optional pattern: ...
Packaging: ...
Ownership: ...
Boundary-case note: ...

Reference Map

Use these references directly as needed:

Not For

  • generic React setup, Vite config, routing, or build tooling
  • broad code-quality guidance outside UI boundary and component architecture decisions
  • domain modeling outside UI boundary and component architecture decisions

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

implementation-governance

No summary provided by upstream source.

Repository SourceNeeds Review
General

test_skill

import json import tkinter as tk from tkinter import messagebox, simpledialog

Archived SourceRecently Updated
General

neo

Browse websites, read web pages, interact with web apps, call website APIs, and automate web tasks. Use Neo when: user asks to check a website, read a web page, post on social media (Twitter/X), interact with any web app, look up information on a specific site, scrape data from websites, automate browser tasks, or when you need to call any website's API. Keywords: website, web page, browse, URL, http, API, twitter, tweet, post, scrape, web app, open site, check site, read page, social media, online service.

Archived SourceRecently Updated
General

image-gen

Generate AI images from text prompts. Triggers on: "生成图片", "画一张", "AI图", "generate image", "配图", "create picture", "draw", "visualize", "generate an image".

Archived SourceRecently Updated