Prisma Schema ビジュアルER図ツール
schema.prismaのコードを入力すると、各modelをカード型UIで一覧表示し、フィールド名・型・制約(@id, @unique, オプショナル)と@relationによる参照関係を視覚的に確認できるツールです。モデル名による絞り込みにも対応しています。
使い方
- 入力欄にschema.prismaのコードを貼り付けます。「サンプルスキーマを読み込む」で動作を確認することもできます。
- 各モデルがカードとして一覧表示され、フィールド名・型・「?」(オプショナル)・ユニーク制約・リレーション先が確認できます。
- モデル数が多い場合は「モデル名で絞り込み」の検索欄で対象を絞り込めます。
- 画面下部の「リレーション一覧」では、どのモデルのどのフィールドがどのモデルを参照しているか(1対1・多対1・1対多)を一覧で確認できます。
このツールについて
Prisma Schema ビジュアルER図ツールは、テキストベースのschema.prismaを読みやすいカード型UIに変換し、モデル同士の関係性を素早く把握できるようにするツールです。大規模なスキーマの全体像を把握したいときや、レビュー時にモデル構成を説明したいときに活用できます。
各フィールドには、主キーを表す鍵アイコン、ユニーク制約バッジ、オプショナルを表す「?」バッジが表示され、`@relation`が付与されたフィールドやリレーション先モデル名として推測されるフィールドは、矢印付きで参照先のモデル名が示されます。
画面下部の「リレーション一覧」では、スキーマ全体から検出したリレーションを`モデル.フィールド → 参照先モデル`という形式で一覧化し、配列型かどうかに応じて「1対多」「1対1 / 多対1」の目安を表示します。
よくある質問
リレーションの多重度(1対1・1対多など)はどのように判定されていますか?
フィールドが配列型(`Post[]`のように`[]`が付いている)であれば「1対多」、そうでなければ「1対1 / 多対1」として簡易的に表示しています。正確な多対多の判定には双方向のリレーション定義全体を解析する必要があるため、あくまで目安としてご利用ください。
Enum(列挙型)は表示されますか?
表示されます。スキーマ内に`enum`定義が含まれる場合、モデル一覧の下に「Enum一覧」としてカード表示され、定義されている値の一覧を確認できます。
複数ファイルに分割されたschema.prismaにも対応していますか?
入力欄に貼り付けたテキストのみを解析対象としています。複数ファイルに分割している場合は、それぞれの内容を1つのテキストにまとめてから貼り付けてください。
入力したスキーマはサーバーに送信されますか?
送信されません。スキーマの解析とカードの表示は、すべてブラウザ内のJavaScriptで完結します。