← スキル一覧に戻る

react-component-patterns
by ngxtm
⭐ 0🍴 0📅 2026年1月23日
SKILL.md
name: React Component Patterns description: Modern React component architecture and composition patterns. metadata: labels: [react, components, composition, patterns] triggers: files: ['/*.jsx', '/*.tsx'] keywords: [component, props, children, composition, hoc, render-props]
React Component Patterns
Priority: P0 (CRITICAL)
Standards for building scalable, maintainable React components.
Implementation Guidelines
- Function Components: Only hooks. No classes.
- Composition: Use
childrenprop. Avoid inheritance. - Props: Explicit TS interfaces. Destructure in params.
- Boolean Props: Shorthand
<Cmp isVisible />vsisVisible={true}. - Imports: Group:
Built-in->External->Internal->Styles. - Error Boundaries: Wrap app/features with
react-error-boundary. - Size: Small (< 250 lines). One component per file.
- Naming:
PascalCasecomponents.use*hooks. - Exports: Named exports only.
- Conditionals: Ternary (
Cond ? <A/> : <B/>) over&&for rendering consistency. - Hoisting: Extract static JSX/Objects outside component to prevent recreation.
Anti-Patterns
- No Classes: Use hooks.
- No Prop Drilling: Use Context/Zustand.
- No Nested Definitions: Define components at top level.
- No Index Keys: Use stable IDs.
- No Inline Handlers: Define before return.
Code
// Composition
export function Layout({ children, aside }: LayoutProps) {
return (
<div className='grid'>
<aside>{aside}</aside>
<main>{children}</main>
</div>
);
}
// Compound Component
export function Select({ children }: { children: ReactNode }) {
return <select>{children}</select>;
}
Select.Option = ({ val, children }) => <option value={val}>{children}</option>;
Reference & Examples
For advanced patterns (HOCs, Render Props, Compound Components): See references/REFERENCE.md.
Related Topics
hooks | state-management | performance
スコア
総合スコア
50/100
リポジトリの品質指標に基づく評価
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
レビュー
💬
レビュー機能は近日公開予定です