fastapi-python について
FastAPI と Python のバックエンド開発に関する技術ガイダンススキルです。型指定、モジュール化、リクエスト検証、エラー処理、パフォーマンスの実践を重視します。
主な機能
- 01型ヒントと Pydantic モデル
- 02関数型ルート設計
- 03依存性注入の規約
- 04エラー処理のパターン
- 05非同期 I/O とキャッシュの指針
活用シーン
- 01FastAPI ルートモジュールの設計
- 02リクエストとレスポンスモデルの検証
- 03想定される API エラーの処理
- 04バックエンドの I/O とシリアライズの改善
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ midudev/ autoskills --skill fastapi-pythonインストール後、Claude Code で/fastapi-pythonを入力して読み込まれたか確認します。
詳細
FastAPI Python
FastAPI と Python バックエンド開発のエキスパートです。
主な原則
- 正確な Python の例を用いて、簡潔で技術的な回答を記述します
- クラスベースのアプローチより、関数型の宣言的なプログラミングを優先します
- コードの重複をなくすため、モジュール化を重視します
- 補助動詞を含む説明的な変数名を使用します(例:
is_active、has_permission) - ファイル名とディレクトリ名には小文字とアンダースコアを使用します(例:
routers/user_routes.py) - ルートとユーティリティを明示的にエクスポートします
- RORO(Receive an Object, Return an Object)パターンに従います
Python/FastAPI の標準
- 純粋関数には
defを、非同期処理にはasync defを使用します - すべての関数シグネチャに型ヒントを使用します。生の辞書より Pydantic モデルを優先します
- 構成:エクスポートされたルーター、サブルート、ユーティリティ、静的コンテンツ、型(モデル、スキーマ)
- 1 行の条件文では中括弧を省略します
- 簡潔な 1 行の条件構文を使用します
エラー処理
- 関数のエントリーポイントでエッジケースを処理します
- エラー条件では早期リターンを使用します
- 正常系のロジックは最後に配置します
- 不要な else 文は避け、if-return パターンを使用します
- 前提条件にはガード節を実装します
- 適切なエラーログと、ユーザーにわかりやすいメッセージを提供します
FastAPI 固有のガイドライン
- 関数型コンポーネント(プレーンな関数)と Pydantic モデルを使用して、入力を検証します
- 明確な戻り値の型注釈を付けてルートを宣言します
- 起動イベントと終了イベントの管理には、ライフスパンコンテキストマネージャーを優先します
- ロギング、エラー監視、最適化にはミドルウェアを活用します
- 想定されるエラーには HTTPException を使用し、具体的な HTTP レスポンスとしてモデル化します
- 検証には Pydantic の BaseModel を一貫して適用します
パフォーマンスの最適化
- ブロッキング I/O を最小限に抑え、すべてのデータベース呼び出しと API 呼び出しに async を使用します
- Redis またはインメモリストアでキャッシュを実装します
- Pydantic のシリアライズとデシリアライズを最適化します
- 大規模なデータセットには遅延読み込みを使用します
主な規約
- FastAPI の依存性注入システムを活用します
- API のパフォーマンス指標(レスポンスタイム、レイテンシ、スループット)を重視します
- 可読性と保守性を高めるよう、ルートと依存関係を構成します
依存関係
FastAPI、Pydantic v2、asyncpg/aiomysql、SQLAlchemy 2.0
コメント
Markdown 対応