mcpField
A
api-development

api-development

github.com/mindrally開発287831 回インストール3 週間前に更新
リポジトリ

api-development について

Go と NestJS による API 開発向けのスキルガイドです。HTTP 処理、検証、モジュール設計、エラー処理、セキュリティの実践指針を開発者に示します。

主な機能

  1. 01Go net/http のルーティングとリクエスト処理
  2. 02入力検証とエラー処理
  3. 03NestJS のモジュール型 API 構成
  4. 04DTO の検証と変換
  5. 05認証と認可の指針

活用シーン

  1. 01標準ライブラリで Go HTTP API を構築
  2. 02TypeScript の NestJS API を構成
  3. 03API の入力検証とセキュリティを確認
  4. 04ミドルウェアと一貫したエラー応答を追加

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/mindrally/skills --skill api-development

インストール後、Claude Code で/api-developmentを入力して読み込まれたか確認します。

詳細

API 開発

Go と NestJS による API 開発のエキスパートです。

標準ライブラリを使用した Go API 開発(1.22 以降)

基本原則
  • 常に最新の安定版 Go(1.22 以降)を使用します
  • HTTP の処理には net/http パッケージを使用します
  • 外部依存関係を追加する前に、標準ライブラリを活用します
HTTP 処理
  • ルーティングには http.NewServeMux() を使用します(Go 1.22 以降の拡張パターン)
  • HTTP メソッドを適切に処理します
  • すべてのレスポンスで適切なステータスコードを返します
  • リクエストボディを安全に解析します
エラー処理
  • 包括的なエラー処理を実装します
  • クライアントにわかりやすいエラーメッセージを返します
  • 十分なコンテキストを含めてエラーをログに記録します
  • API 固有のエラーにはカスタムエラー型を使用します
入力検証
  • 受信するすべてのリクエストデータを検証します
  • インジェクション攻撃を防ぐため、入力をサニタイズします
  • 明確な検証エラーメッセージを返します
  • 無効なデータを含むリクエストは早期に拒否します
ミドルウェア
  • 横断的関心事に対応するミドルウェアを実装します
  • ロギングとリクエストトレーシングにミドルウェアを使用します
  • 保護されたルートに認証ミドルウェアを適用します
  • ミドルウェアとしてレート制限を実装します

TypeScript によるクリーンな NestJS API

コード標準
  • コードとドキュメントにはすべて英語を使用します
  • 各変数と関数の型を必ず宣言します
  • any 型の使用を避け、明示的な型を優先します
  • TypeScript コンパイラーの厳格なオプションを有効にします
命名規則
  • クラスとインターフェースには PascalCase を使用します
  • 変数、関数、メソッドには camelCase を使用します
  • 定数には SCREAMING_SNAKE_CASE を使用します
  • ファイル名には kebab-case を使用します
モジュール型アーキテクチャ
  • ドメインごとにモジュールを 1 つ実装します
  • モジュールの役割を絞り、一貫性を保ちます
  • 必要なコンポーネントのみをエクスポートします
  • インポートを整理するためにバレルファイルを使用します
DTO と検証
  • すべての入出力に DTO を使用します
  • class-validator デコレーターで検証します
  • class-transformer でデータを変換します
  • DTO とドメインエンティティを分離します
コントローラーのガイドライン
  • コントローラーは薄く保ちます
  • ビジネスロジックはサービスに委譲します
  • 適切な HTTP デコレーターを使用します
  • 一貫したレスポンス形式を実装します
共通モジュール

共有して再利用できるコードを実装します。

  • Configs - 共有設定ユーティリティ
  • Decorators - カスタムデコレーター
  • Guards - 認証と認可
  • Filters - 例外フィルター
  • Interceptors - リクエスト/レスポンスインターセプター
  • Pipes - 検証と変換
セキュリティのベストプラクティス
  • 認証ガードを実装します
  • ロールベースの認可を使用します
  • 境界であらゆる入力を検証します
  • XSS を防ぐため、出力をサニタイズします

コメント