テンプレート一覧に戻る

Elixir + Phoenix

Elixir + Phoenix + LiveView のプロジェクト向けCLAUDE.md。リアルタイムWebアプリとOTPパターンの活用に最適です。

上級elixirphoenixliveviewotp
CLAUDE.md
# プロジェクト名

Elixir + Phoenix で構築されたWebアプリケーション。

## 技術スタック

- **フレームワーク**: Phoenix 1.7+ (LiveView)
- **言語**: Elixir 1.17+
- **ORM**: Ecto 3.x
- **ランタイム**: Erlang/OTP 27
- **DB**: PostgreSQL 16
- **テスト**: ExUnit

## コマンド

| コマンド | 用途 |
|---------|------|
| `mix phx.server` | 開発サーバー起動 |
| `mix test` | テスト実行 |
| `mix ecto.migrate` | マイグレーション適用 |
| `mix format` | フォーマット |
| `mix credo` | 静的解析 |
| `mix dialyzer` | 型チェック |

## ディレクトリ構造

| パス | 役割 |
|-----|------|
| `lib/app_web/` | Webレイヤー(コントローラー・LiveView) |
| `lib/app/` | ビジネスロジック・コンテキスト |
| `lib/app/repo.ex` | Ectoリポジトリ |
| `priv/repo/migrations/` | マイグレーション |
| `test/` | テストコード |

## コーディング規約

- Context(バウンデッドコンテキスト)でビジネスロジックを整理
- LiveViewでリアルタイムUI(WebSocket)
- パイプ演算子 `|>` でデータ変換を連鎖
- パターンマッチングで条件分岐
- with文でハッピーパスを明確に
- GenServerは必要な場合のみ使用

## Git規約

- ブランチ: `feature/`, `fix/`, `chore/`
- コミットメッセージ: Conventional Commits形式

関連ガイド

検索

ガイドやテンプレートを検索...