building-components
Original:🇺🇸 English
Translated
Builds, restructures, and standardizes React components according to project conventions (placement, folder/file naming, exports, props patterns). Use when adding components or when reorganizing existing components during refactors, migrations, or component moves.
2installs
Added on
NPX Install
npx skill4agent add ilya-valasiuk/agent-skills building-componentsTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →Creating Components
Workflow
Copy this checklist and track progress:
Component Progress:
- [ ] Step 1: Determine placement
- [ ] Step 2: Create folder structure
- [ ] Step 3: Create component file
- [ ] Step 4: Add sub-components (if needed)
- [ ] Step 5: Validate against checklistStep 1: Determine placement
Infer from context if possible, otherwise ask the user.
See references/placement.md for paths and conventions for each type:
- Shared (common) component
- Page-specific component
- Sub-component of existing component
- Page component
Step 2: Create folder structure
Create a kebab-case folder in the appropriate location.
See references/folder-structures.md for diagrams of each scenario.
Step 3: Create component file
Create a PascalCase file inside the folder.
Follow the conventions in references/REFERENCE.md.
.tsxStep 4: Add sub-components (if needed)
If the component needs sub-components, create a folder inside it.
Each sub-component follows the same rules. See references/placement.md for the sub-component pattern.
components/Step 5: Validate against checklist
Run through the validation checklist below before considering the component complete.
Validation checklist
After creating a component, verify every item:
Naming
- Folder name is kebab-case (e.g., )
card-content - File name is PascalCase and matches the exported component (e.g., exports
CardContent.tsx)CardContent - File is inside its own folder (not loose in a parent directory)
Exports
- Uses named export:
export const ComponentName: React.FC<Props> - No default exports
- One component per file
Props
- Props defined as (not
type Props)interface - Props ordered: required → optional → function callbacks
- used (or
React.FC<Props>if no props)React.FC
Structure
- Component placed in the correct directory (common vs page-specific)
- Sub-components live in a subfolder, not alongside the parent
components/ - Implicit return used when the body is JSX-only
Files
- Optional helper files (,
types.ts,constants.ts,helpers.ts) created only if neededindex.ts