# Cursor のプロジェクトルール設定
Cursor エディタでは、.cursorrules ファイルを使ってプロジェクト固有のルールや指示を設定できます。このファイルに記述した内容は、AI アシスタントがコードを生成・編集する際のガイドラインとして使用されます。
# .cursorrules ファイルの作成
プロジェクトのルートディレクトリに .cursorrules ファイルを作成します。
touch .cursorrules
# プロジェクトルールの記述
.cursorrules ファイルには、Markdown 形式でプロジェクトのルールや指示を記述します。
# 基本的な記述例
# プロジェクトルール
## コーディング規約
- インデントはスペース 2 つを使用する
- 関数名はキャメルケースで記述する
- クラス名はパスカルケースで記述する
## ファイル構成
- コンポーネントは `src/components/` に配置する
- ユーティリティ関数は `src/utils/` に配置する
## 禁止事項
- `var` の使用を禁止する(`let` または `const` を使用)
- `console.log` を本番コードに残さない
# 実際の設定例
一般的な Web アプリケーション開発で使用する設定例:
# プロジェクトルール
## コーディング規約
### 命名規則
- 変数・関数名はキャメルケース(`camelCase`)を使用
- クラス名はパスカルケース(`PascalCase`)を使用
- 定数は大文字のスネークケース(`UPPER_SNAKE_CASE`)を使用
- ファイル名はケバブケース(`kebab-case`)を使用
### コードスタイル
- インデントはスペース 2 つを使用(タブは使用しない)
- 文字列はシングルクォート(`'`)を使用
- セミコロンは省略しない
- 行の最大長は 100 文字とする
### 禁止事項
- `var` の使用を禁止(`let` または `const` を使用)
- `console.log` を本番コードに残さない(デバッグ用のログは削除)
- `any` 型の使用を避ける(TypeScript 使用時)
- 未使用のインポートや変数を残さない
## アーキテクチャ
### ファイル構成
- コンポーネントは `src/components/` に配置
- ユーティリティ関数は `src/utils/` に配置
- API クライアントは `src/api/` に配置
- 型定義は `src/types/` に配置
### コンポーネント設計
- コンポーネントは単一責任の原則に従う
- 再利用可能なコンポーネントは `components/common/` に配置
- ページ固有のコンポーネントは `components/pages/` に配置
## エラーハンドリング
- エラーは適切にキャッチし、ユーザーに分かりやすいメッセージを表示
- 非同期処理では必ずエラーハンドリングを実装
- エラーログは適切なロギングサービスに送信
## テスト
- 新機能追加時は必ずテストを記述
- テストファイルは `*.test.ts` または `*.spec.ts` の命名規則に従う
- テストカバレッジは 80% 以上を維持
## パフォーマンス
- 不要な再レンダリングを避ける(React.memo、useMemo などを適切に使用)
- 画像は最適化された形式(WebP など)を使用
- バンドルサイズを意識し、不要なライブラリのインポートを避ける
# ルールの適用範囲
.cursorrules ファイルに記述したルールは、以下の場面で適用されます:
- コード生成時
- コード編集時
- リファクタリング時
- バグ修正時
# 注意点
.cursorrulesファイルはプロジェクトのルートディレクトリに配置する必要がある- Markdown 形式で記述する
- ルールは明確で具体的に記述する
- 複数のルールがある場合は、見出しで構造化する
# ルールの確認
Cursor エディタでファイルを開き、AI アシスタントに質問すると、設定したルールに従って回答が生成されます。ルールが正しく適用されているか確認するには、実際にコード生成や編集を試してみるのが確実です。