← スキル一覧に戻る
Example Template (

create-react-component
by ThousandsOfTies
Home Teacher with AI
⭐ 0🍴 0📅 2026年1月25日
SKILL.md
name: Create React Component description: Create a new React component following project best practices
Creating a React Component
This skill guides the creation of new React components to ensure consistency, maintainability, and quality across the project.
1. Analysis & Preparation
- Identify Responsibility: Clearly define what the component does. Is it a UI primitive (atom) or a complex feature (organism)?
- Determine Location:
- Shared UI components:
src/components/ui/orsrc/components/common/ - Feature-specific components:
src/features/<FeatureName>/components/
- Shared UI components:
- Check Existing: Verify if a similar component already exists to avoid duplication.
2. File Structure
Create a directory with the PascalCase name of the component.
Example: src/components/ui/MyComponent
The directory should contain:
MyComponent.tsx: The main component implementation.index.ts: Re-export the component (e.g.,export * from './MyComponent';).(Optional) MyComponent.cssorstyles.ts: For styling, depending on the project's styling strategy (e.g., CSS Modules, Styled Components, Tailwind).
3. Implementation Guidelines (The "Gold Standard")
Setup
- Imports: Group imports: React/Project dependencies -> Local components -> Styles/Utils.
- Types: Always define a
Propsinterface. Export it if it's likely to be used elsewhere.
Coding
- Function Component: Use
const ComponentName = ...orfunction ComponentName(...). - Props Destructuring: Destructure props in the function signature for readability.
- Clean Code: Keep the render logic clean. Extract complex logic into custom hooks if proper.
- Accessibility (a11y): Ensure interactive elements have accessible names (aria-label) and keyboard navigation support.
Example Template (MyComponent.tsx)
import React from 'react';
// Define Props interface
export interface MyComponentProps {
title: string;
isActive?: boolean;
onClick: () => void;
}
/**
* MyComponent
* Description of what this component does.
*/
export const MyComponent: React.FC<MyComponentProps> = ({
title,
isActive = false,
onClick,
}) => {
return (
<div
role="button"
tabIndex={0}
onClick={onClick}
onKeyDown={(e) => {
if (e.key === 'Enter' || e.key === ' ') {
onClick();
}
}}
className={`my-component ${isActive ? 'active' : ''}`}
>
<h3>{title}</h3>
</div>
);
};
スコア
総合スコア
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
レビュー
💬
レビュー機能は近日公開予定です