テンプレート一覧に戻る
Ruby on Rails
Rails 8 + Ruby 3.3 + PostgreSQL のフルスタック向けCLAUDE.md。Hotwireを活用したモダンなRails開発に最適です。
中級rubyrailspostgresql
CLAUDE.md
# プロジェクト名
Ruby on Rails 8 で構築されたWebアプリケーション。
## 技術スタック
- **フレームワーク**: Ruby on Rails 8.0
- **言語**: Ruby 3.3+
- **DB**: PostgreSQL 16
- **テスト**: RSpec + FactoryBot + Capybara
- **フロントエンド**: Hotwire (Turbo + Stimulus)
- **ジョブ**: Solid Queue
## コマンド
| コマンド | 用途 |
|---------|------|
| `bin/rails server` | 開発サーバー起動 |
| `bundle exec rspec` | テスト実行 |
| `bin/rails db:migrate` | マイグレーション適用 |
| `bundle exec rubocop` | Lint実行 |
| `bin/rails db:seed` | シードデータ投入 |
## ディレクトリ構造
| パス | 役割 |
|-----|------|
| `app/models/` | ActiveRecordモデル |
| `app/controllers/` | コントローラー |
| `app/views/` | ビューテンプレート |
| `app/services/` | サービスオブジェクト |
| `app/jobs/` | バックグラウンドジョブ |
| `db/migrate/` | マイグレーションファイル |
| `spec/` | RSpecテスト |
## コーディング規約
- Rubocopのルールに準拠
- Fat Model を避け、サービスオブジェクトにロジックを抽出
- N+1クエリはBullet gemで検出・修正
- スコープは named scope で定義
- コールバックは最小限に。複雑な処理はサービス層へ
- Hotwire (Turbo Frames / Streams) でインタラクティブUI
## Git規約
- ブランチ: `feature/`, `fix/`, `chore/`
- コミットメッセージ: Conventional Commits形式