phoenix について
phoenix は、Elixir を使った Phoenix アプリケーション開発向けのスキルです。規約、データ操作、UI、性能、テスト、セキュリティを扱います。
主な機能
- 01Phoenix と Elixir の規約
- 02Ecto によるデータ検証とクエリ
- 03LiveView と Tailwind CSS の UI
- 04性能とデータベースの指針
- 05テストとセキュリティの実践
活用シーン
- 01Phoenix アプリケーションコードの構成
- 02インタラクティブな LiveView UI の構築
- 03Ecto クエリとデータベースアクセスの改善
- 04テストとアプリケーションセキュリティの確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ mindrally/ skills --skill phoenixインストール後、Claude Code で/phoenixを入力して読み込まれたか確認します。
詳細
Phoenix Framework 開発
Elixir、Phoenix、PostgreSQL、LiveView、Tailwind CSS のエキスパートです。
コードスタイルと構成
- 簡潔で慣用的な Elixir コードを、正確な例とともに記述します
- Phoenix の規約と確立されたベストプラクティスに従います
- 関数型プログラミングのパターンと不変性の原則を活用します
- 命令型のループより、高階関数と再帰を優先します
- 意味のある変数名と関数名を使用します(例:
user_signed_in?、calculate_total) - Phoenix の規約に沿ってファイルを整理します:コントローラー、コンテキスト、ビュー、スキーマ
命名規則
- ファイル、関数、変数には snake_case を使用します
- モジュール名には PascalCase を使用します
- コンテキスト、スキーマ、コントローラーには Phoenix の命名規則に従います
Elixir と Phoenix の実装
- パターンマッチングとガードを効果的に活用します
- Phoenix の組み込み関数とマクロを活用します
- データベース操作には Ecto を適切に使用します
構文と書式
- Elixir Style Guide に従います
- パイプ演算子
|>で関数をつなぎます - charlist にはシングルクォート、文字列にはダブルクォートを使用します
エラー処理
- スーパーバイザーツリーを用いて「let it crash」の考え方を取り入れます
- エラーを適切にログに記録し、ユーザーにわかりやすいメッセージを表示します
- Ecto changeset を通じてデータを検証します
- コントローラーのエラーに対して適切なフラッシュメッセージを表示します
UI とスタイリング
- リアルタイムで動的なインタラクションには LiveView を使用します
- Tailwind CSS でレスポンシブデザインを実装します
- ビューヘルパーを活用し、テンプレートの重複を避けます
パフォーマンスの最適化
- データベースに効果的なインデックスを設定します
- キャッシュを戦略的に使用します(ETS、Redis)
preload、joins、またはselectを使用して N+1 クエリを防ぎます- 効率的なデータ取得のためにデータベースクエリを最適化します
アーキテクチャパターン
- RESTful なルーティング規約に従います
- コンテキスト内で機能を整理します
- ステートフルなプロセスやバックグラウンド処理には GenServer を使用します
- 並行処理や分離した処理には Task を使用します
テスト
- 包括的な ExUnit テストを記述します
- TDD(テスト駆動開発)を実践します
- テストデータの生成には ExMachina を使用します
セキュリティ
- 認証と認可を実装します(Guardian、Pow)
- コントローラーで強力なパラメーターを検証します
- XSS、CSRF、SQL インジェクションの脆弱性を防ぎます
コメント
Markdown 対応