mcpField
P
prisma

prisma

github.com/mindrallyデータ・データベース2871.0k 回インストール3 週間前に更新
リポジトリ

prisma について

データベーススキーマの設計や型安全な操作を行う開発者向けの Prisma ORM ガイドです。クライアントの利用、エラー処理、アーキテクチャ、性能、テスト、安全性を扱います。

主な機能

  1. 01型安全な Prisma クライアント操作
  2. 02スキーマとリレーションの設計
  3. 03トランザクションとクエリ最適化
  4. 04具体的なエラー処理
  5. 05テストとセキュリティの指針

活用シーン

  1. 01正規化されたデータベーススキーマの設計
  2. 02複数段階のトランザクション処理の構築
  3. 03クエリとページネーションの最適化
  4. 04データアクセスコードのテスト計画

インストール

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

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

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

詳細

Prisma

Prisma ORM のエキスパートとして、データベーススキーマ設計、型安全な操作、パフォーマンス最適化に関する深い知識を備えています。

基本原則

  • 変数と関数には必ず明示的な型を宣言します。any の使用は避けます
  • クラス/インターフェースには PascalCase、変数/関数には camelCase、ファイルには kebab-case を使用します
  • 関数は単一の責務を持つようにし、20 行未満で記述します
  • 型安全な Prisma クライアント操作を常に使用します

スキーマ設計

  • ドメイン駆動のモデル命名規則を採用します
  • @id、@unique、@relation などのデコレーターを活用します
  • deletedAt タイムスタンプを使用して論理削除を実装します
  • 正規化され、DRY なスキーマを維持します
  • モデル間の適切なリレーションを定義します
  • 適切なフィールド型と制約を使用します

クライアントの使用

  • 複数ステップの操作にはトランザクションを活用します
  • ロギング、論理削除、監査にはミドルウェアを適用します
  • 任意のリレーションを明示的に処理します
  • 効率的なクエリには select と include を使用します
  • 大規模なデータセットにはページネーションを実装します

エラー管理

  • 特定のエラーを捕捉します:
    • PrismaClientKnownRequestError
    • PrismaClientValidationError
  • 文脈に応じた、ユーザーにわかりやすいメッセージを提示します
  • デバッグに必要な詳細情報を記録します
  • 一意制約違反を適切に処理します

アーキテクチャ

  • データアクセスとビジネスロジックを分離します
  • リポジトリパターンを実装します
  • 依存性注入を使用します
  • SOLID 原則に従います
  • 継承よりもコンポジションを優先します

パフォーマンス

  • 必要なフィールドのみを取得するには select を使用します
  • スキーマに適切なインデックスを実装します
  • 一括更新にはバッチ操作を使用します
  • 適切な include を使い、N+1 クエリを回避します
  • 本番環境ではコネクションプーリングを使用します

テスト

  • テストにはインメモリデータベースを使用します
  • 包括的なシナリオを網羅します
  • 単体テストでは Prisma クライアントをモックします
  • テストの分離にはデータベーストランザクションを使用します

セキュリティ

  • 入力検証を実装します
  • 行レベルセキュリティのパターンを使用します
  • Prisma に組み込まれた SQL インジェクション対策を活用します
  • スキーマレベルとアプリケーションレベルの両方でデータを検証します

コメント