mcpField
N
nestjs-best-practices

nestjs-best-practices

github.com/midudev開発7.0k65 回インストール2 週間前に更新
リポジトリ

nestjs-best-practices について

NestJS アプリケーションの開発、レビュー、リファクタリング向けのガイドスキルです。10 分野にわたる 40 のルールを優先度順にまとめ、個別のルールファイルに説明とコード例を掲載しています。

主な機能

  1. 0110 分野にわたる優先度付き 40 ルール
  2. 02アーキテクチャと依存性注入の指針
  3. 03セキュリティ、エラー処理、性能の実践
  4. 04テスト、データベース、API の推奨事項
  5. 05マイクロサービスとデプロイの指針

活用シーン

  1. 01NestJS アプリのアーキテクチャレビュー
  2. 02モジュール、コントローラー、サービスのリファクタリング
  3. 03認証と入力検証の実践確認
  4. 04クエリ、テスト、マイクロサービス設計の改善

インストール

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

$npx skills add https://github.com/midudev/autoskills --skill nestjs-best-practices

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

rules/
_sections.md
_template.md
api-use-dto-serialization.md
api-use-interceptors.md
api-use-pipes.md
api-versioning.md
arch-avoid-circular-deps.md
arch-feature-modules.md
arch-module-sharing.md
arch-single-responsibility.md
arch-use-events.md
arch-use-repository-pattern.md
db-avoid-n-plus-one.md
db-use-migrations.md
db-use-transactions.md
devops-graceful-shutdown.md
devops-use-config-module.md
devops-use-logging.md
di-avoid-service-locator.md
di-interface-segregation.md
di-liskov-substitution.md
di-prefer-constructor-injection.md
di-scope-awareness.md
di-use-interfaces-tokens.md
error-handle-async-errors.md
error-throw-http-exceptions.md
error-use-exception-filters.md
micro-use-health-checks.md
micro-use-patterns.md
micro-use-queues.md

詳細

NestJS のベストプラクティス

NestJS アプリケーション向けの包括的なベストプラクティスガイドです。10 のカテゴリにわたる 40 のルールを収録し、影響度に基づいて優先順位を付けることで、自動リファクタリングやコード生成を支援します。

適用するタイミング

以下のような場合に、このガイドラインを参照してください。

  • NestJS の新しいモジュール、コントローラー、サービスを作成する場合
  • 認証と認可を実装する場合
  • アーキテクチャとセキュリティの問題についてコードをレビューする場合
  • 既存の NestJS コードベースをリファクタリングする場合
  • パフォーマンスやデータベースクエリを最適化する場合
  • マイクロサービスアーキテクチャを構築する場合

優先度別のルールカテゴリ

優先度カテゴリ影響度プレフィックス
1アーキテクチャCRITICALarch-
2依存性注入CRITICALdi-
3エラー処理HIGHerror-
4セキュリティHIGHsecurity-
5パフォーマンスHIGHperf-
6テストMEDIUM-HIGHtest-
7データベースと ORMMEDIUM-HIGHdb-
8API 設計MEDIUMapi-
9マイクロサービスMEDIUMmicro-
10DevOps とデプロイLOW-MEDIUMdevops-

クイックリファレンス

1. アーキテクチャ(CRITICAL)
  • arch-avoid-circular-deps - モジュール間の循環依存を避ける
  • arch-feature-modules - 技術レイヤーではなく機能ごとに整理する
  • arch-module-sharing - モジュールのエクスポートとインポートを適切に行い、プロバイダーの重複を避ける
  • arch-single-responsibility - 「ゴッドサービス」ではなく、責務を絞ったサービスを使用する
  • arch-use-repository-pattern - テスト容易性のためにデータベースロジックを抽象化する
  • arch-use-events - 疎結合を実現するイベント駆動型アーキテクチャを使用する
2. 依存性注入(CRITICAL)
  • di-avoid-service-locator - サービスロケーターのアンチパターンを避ける
  • di-interface-segregation - インターフェース分離の原則(ISP)
  • di-liskov-substitution - リスコフの置換原則(LSP)
  • di-prefer-constructor-injection - プロパティ注入よりコンストラクター注入を優先する
  • di-scope-awareness - シングルトン、リクエスト、トランジェントの各スコープを理解する
  • di-use-interfaces-tokens - インターフェースにはインジェクショントークンを使用する
3. エラー処理(HIGH)
  • error-use-exception-filters - 例外処理を一元化する
  • error-throw-http-exceptions - NestJS の HTTP 例外を使用する
  • error-handle-async-errors - 非同期エラーを適切に処理する
4. セキュリティ(HIGH)
  • security-auth-jwt - JWT 認証を安全に行う
  • security-validate-all-input - class-validator でバリデーションする
  • security-use-guards - 認証ガードと認可ガードを使用する
  • security-sanitize-output - XSS 攻撃を防ぐ
  • security-rate-limiting - レート制限を実装する
5. パフォーマンス(HIGH)
  • perf-async-hooks - 非同期ライフサイクルフックを適切に使用する
  • perf-use-caching - キャッシュ戦略を実装する
  • perf-optimize-database - データベースクエリを最適化する
  • perf-lazy-loading - 起動を高速化するためにモジュールを遅延読み込みする
6. テスト(MEDIUM-HIGH)
  • test-use-testing-module - NestJS のテストユーティリティを使用する
  • test-e2e-supertest - Supertest で E2E テストを行う
  • test-mock-external-services - 外部依存関係をモックする
7. データベースと ORM(MEDIUM-HIGH)
  • db-use-transactions - トランザクションを管理する
  • db-avoid-n-plus-one - N+1 クエリの問題を避ける
  • db-use-migrations - スキーマ変更にはマイグレーションを使用する
8. API 設計(MEDIUM)
  • api-use-dto-serialization - DTO とレスポンスのシリアライズを行う
  • api-use-interceptors - 横断的関心事にインターセプターを使用する
  • api-versioning - API のバージョニング戦略を使用する
  • api-use-pipes - パイプで入力を変換する
9. マイクロサービス(MEDIUM)
  • micro-use-patterns - メッセージとイベントのパターンを使用する
  • micro-use-health-checks - オーケストレーション向けのヘルスチェックを実装する
  • micro-use-queues - バックグラウンドジョブを処理する
10. DevOps とデプロイ(LOW-MEDIUM)
  • devops-use-config-module - 環境設定を行う
  • devops-use-logging - 構造化ログを使用する
  • devops-graceful-shutdown - ダウンタイムなしでデプロイする

使用方法

詳しい説明とコード例については、各ルールファイルをお読みください。

rules/arch-avoid-circular-deps.md
rules/security-validate-all-input.md
rules/_sections.md

各ルールファイルには、次の内容が含まれています。

  • 重要な理由の簡潔な説明
  • 説明付きの誤ったコード例
  • 説明付きの正しいコード例
  • 追加のコンテキストと参考資料

完全版ドキュメント

すべてのルールを展開して1つのドキュメントにまとめた完全版ガイドについては、 リポジトリ内の AGENTS.mdをご覧ください。

コメント