Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 54 additions & 0 deletions .claude/memories/cursor__cursor-commit-message-rules.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Git Commit Message Rules

## コミットルール

### 基本原則

- **1 行完結**: 改行なしで 50 文字以内
- **機能単位**: 1 コミット = 1 つの論理的変更
- **分割**: 関連性の低い変更は別コミットに分ける

### フォーマット

```
<type>: <subject>
```

### Type 一覧

- `feat`: 新機能追加
- `fix`: バグ修正
- `docs`: ドキュメント変更
- `style`: フォーマット変更(機能影響なし)
- `refactor`: リファクタリング
- `test`: テスト追加・修正
- `chore`: その他(依存関係更新など)

### 良い例

```bash
feat: add MinIO client to API container
fix: correct GraphQL field names to camelCase
refactor: simplify JSON escaping logic
docs: update README with seed script usage
```

### 避けるべき例

```bash
❌ fix bug # 何のバグか不明
❌ update file # どのファイルの何を更新したか不明
❌ wip / temp # 作業途中・一時的なコミット
❌ いろいろ修正 # 複数変更の混在
```

### ブランチ戦略

- **新機能**: `feature/issue○○/title[簡単な説明]`
- **修正**: `fix/issue○○/title[簡単な説明]`
- **ベースブランチ**: `develop` (通常) / `main` (リリース)
description:
globs:
alwaysApply: false

---
66 changes: 66 additions & 0 deletions .claude/memories/cursor__cursor-project-guide.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# Project Development Guide

## プロジェクト概要

- **プロジェクト名**: Nutfes-Bingo
- **アーキテクチャ**: Docker Compose (api/view-user/view-admin/db/minio)
- **バックエンド**: Hasura + PostgreSQL
- **フロントエンド**: Next.js + Apollo Client + Recoil
- **認証**: NextAuth + Keycloak
- **ストレージ**: MinIO

## 🛠️ 開発環境・コマンド

### 環境構築

```bash
make run # 開発環境起動 (Docker Compose + DB適用)
make down # 環境停止
make run-prod # 本番環境起動
```

### ビルド・テスト・開発

```bash
# view-user / view-admin 共通
npm run dev # 開発サーバー起動
npm run build # 本番ビルド
npm run lint # ESLint実行
npm run lint:fix # ESLint自動修正
npm run codegen # GraphQL型生成

# Makefile経由
make codegen # 両アプリの型生成
make db-apply # Hasura メタデータ・マイグレーション適用
```

## 📝 コードスタイル・規約

### 技術スタック

- **言語**: TypeScript + Next.js
- **フォーマット**: Prettier + ESLint (next/core-web-vitals, prettier, import/warnings)
- **スタイル**: CSS Modules (`*.module.css`)

### 命名規則

- **React Component**: PascalCase
- **GraphQL フィールド**: camelCase
- **ファイル名**: kebab-case または PascalCase (コンポーネント)

### Import ルール

- **エイリアス**: `@/*` を使用
- **共通コンポーネント**: `@/components/common` から import
- **順序**: 外部ライブラリ → 内部ライブラリ → 相対パス

### エラーハンドリング

- **基本**: `try-catch` パターン
- **フォーム**: `react-hook-form` バリデーション
- **GraphQL**: Apollo Client エラーハンドリング
description:
globs:
alwaysApply: false

---
64 changes: 64 additions & 0 deletions .claude/memories/cursor__cursor-pull-request-rules.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# Pull Request Rules

## PR 作成前チェックリスト

- [ ] ブランチがリモートにプッシュされている
- [ ] コミットが適切に分割されている
- [ ] 動作確認が完了している
- [ ] 関連 Issue が存在する場合は番号を確認

## PR 作成手順

**重要**: GitHub MCP を使用して PR を作成すること(`gh`コマンド禁止)

### GitHub MCP 使用例

```bash
mcp_github-remote_create_pull_request {
"owner": "hnhk",
"repo": "nutfes-Bingo",
"title": "feat: 既存の賞品画像を用いたシードデータ機能の実装",
"head": "feature/issue123/seed-data",
"base": "develop",
"body": "# 対応Issue\n\n- resolve #123\n\n# 概要\n\n既存の賞品画像を活用したシードデータ機能を実装\n\n..."
}
```

## PR タイトル形式

```
<type>: <feature-summary>
```

## PR 説明文構成

**必須**: `.github/pull_request_template.md` に従って記載

1. **対応 Issue**: `- resolve #<番号>`
2. **概要**: 開発内容の簡潔な説明
3. **実装詳細**:
- 追加したファイル
- 変更したファイル
- 削除したファイル
- 主な変更内容
4. **画面スクリーンショット等**: 必要に応じて
5. **テスト項目**: チェックリスト形式
6. **備考**: 困った箇所・質問など

## 必須事項

- **GitHub MCP 使用**: `gh`コマンドではなく MCP を使用して PR 作成
- **テンプレート準拠**: `.github/pull_request_template.md`の構成を厳守
- **ファイルパス明記**: 実装詳細には具体的なファイルパスを記載
- **機能単位コミット**: 1 コミット 1 機能の原則を守る

## 推奨事項

- **事前動作確認**: PR 作成前に必ず動作テストを実施
- **コードレビュー**: 自分でもコードを一度見直してから PR 作成
- **継続的更新**: 開発中も定期的にコミット・プッシュ
description:
globs:
alwaysApply: false

---
54 changes: 54 additions & 0 deletions .clinerules/cursor__cursor-commit-message-rules.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Git Commit Message Rules

## コミットルール

### 基本原則

- **1 行完結**: 改行なしで 50 文字以内
- **機能単位**: 1 コミット = 1 つの論理的変更
- **分割**: 関連性の低い変更は別コミットに分ける

### フォーマット

```
<type>: <subject>
```

### Type 一覧

- `feat`: 新機能追加
- `fix`: バグ修正
- `docs`: ドキュメント変更
- `style`: フォーマット変更(機能影響なし)
- `refactor`: リファクタリング
- `test`: テスト追加・修正
- `chore`: その他(依存関係更新など)

### 良い例

```bash
feat: add MinIO client to API container
fix: correct GraphQL field names to camelCase
refactor: simplify JSON escaping logic
docs: update README with seed script usage
```

### 避けるべき例

```bash
❌ fix bug # 何のバグか不明
❌ update file # どのファイルの何を更新したか不明
❌ wip / temp # 作業途中・一時的なコミット
❌ いろいろ修正 # 複数変更の混在
```

### ブランチ戦略

- **新機能**: `feature/issue○○/title[簡単な説明]`
- **修正**: `fix/issue○○/title[簡単な説明]`
- **ベースブランチ**: `develop` (通常) / `main` (リリース)
description:
globs:
alwaysApply: false

---
66 changes: 66 additions & 0 deletions .clinerules/cursor__cursor-project-guide.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# Project Development Guide

## プロジェクト概要

- **プロジェクト名**: Nutfes-Bingo
- **アーキテクチャ**: Docker Compose (api/view-user/view-admin/db/minio)
- **バックエンド**: Hasura + PostgreSQL
- **フロントエンド**: Next.js + Apollo Client + Recoil
- **認証**: NextAuth + Keycloak
- **ストレージ**: MinIO

## 🛠️ 開発環境・コマンド

### 環境構築

```bash
make run # 開発環境起動 (Docker Compose + DB適用)
make down # 環境停止
make run-prod # 本番環境起動
```

### ビルド・テスト・開発

```bash
# view-user / view-admin 共通
npm run dev # 開発サーバー起動
npm run build # 本番ビルド
npm run lint # ESLint実行
npm run lint:fix # ESLint自動修正
npm run codegen # GraphQL型生成

# Makefile経由
make codegen # 両アプリの型生成
make db-apply # Hasura メタデータ・マイグレーション適用
```

## 📝 コードスタイル・規約

### 技術スタック

- **言語**: TypeScript + Next.js
- **フォーマット**: Prettier + ESLint (next/core-web-vitals, prettier, import/warnings)
- **スタイル**: CSS Modules (`*.module.css`)

### 命名規則

- **React Component**: PascalCase
- **GraphQL フィールド**: camelCase
- **ファイル名**: kebab-case または PascalCase (コンポーネント)

### Import ルール

- **エイリアス**: `@/*` を使用
- **共通コンポーネント**: `@/components/common` から import
- **順序**: 外部ライブラリ → 内部ライブラリ → 相対パス

### エラーハンドリング

- **基本**: `try-catch` パターン
- **フォーム**: `react-hook-form` バリデーション
- **GraphQL**: Apollo Client エラーハンドリング
description:
globs:
alwaysApply: false

---
64 changes: 64 additions & 0 deletions .clinerules/cursor__cursor-pull-request-rules.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# Pull Request Rules

## PR 作成前チェックリスト

- [ ] ブランチがリモートにプッシュされている
- [ ] コミットが適切に分割されている
- [ ] 動作確認が完了している
- [ ] 関連 Issue が存在する場合は番号を確認

## PR 作成手順

**重要**: GitHub MCP を使用して PR を作成すること(`gh`コマンド禁止)

### GitHub MCP 使用例

```bash
mcp_github-remote_create_pull_request {
"owner": "hnhk",
"repo": "nutfes-Bingo",
"title": "feat: 既存の賞品画像を用いたシードデータ機能の実装",
"head": "feature/issue123/seed-data",
"base": "develop",
"body": "# 対応Issue\n\n- resolve #123\n\n# 概要\n\n既存の賞品画像を活用したシードデータ機能を実装\n\n..."
}
```

## PR タイトル形式

```
<type>: <feature-summary>
```

## PR 説明文構成

**必須**: `.github/pull_request_template.md` に従って記載

1. **対応 Issue**: `- resolve #<番号>`
2. **概要**: 開発内容の簡潔な説明
3. **実装詳細**:
- 追加したファイル
- 変更したファイル
- 削除したファイル
- 主な変更内容
4. **画面スクリーンショット等**: 必要に応じて
5. **テスト項目**: チェックリスト形式
6. **備考**: 困った箇所・質問など

## 必須事項

- **GitHub MCP 使用**: `gh`コマンドではなく MCP を使用して PR 作成
- **テンプレート準拠**: `.github/pull_request_template.md`の構成を厳守
- **ファイルパス明記**: 実装詳細には具体的なファイルパスを記載
- **機能単位コミット**: 1 コミット 1 機能の原則を守る

## 推奨事項

- **事前動作確認**: PR 作成前に必ず動作テストを実施
- **コードレビュー**: 自分でもコードを一度見直してから PR 作成
- **継続的更新**: 開発中も定期的にコミット・プッシュ
description:
globs:
alwaysApply: false

---
Loading