Nihilist Postmodern Mistake

    prisma-erd-generator
    TypeScript icon, indicating that this package has built-in type declarations

    1.2.5 • Public • Published

    Prisma Entity Relationship Diagram Generator

    All Contributors

    Prisma generator to create an ER Diagram every time you generate your prisma client.

    Like this tool? @Skn0tt started this effort with his web app ER diagram generator

    npm i -D prisma-erd-generator @mermaid-js/mermaid-cli
    # or
    yarn add -D prisma-erd-generator @mermaid-js/mermaid-cli

    Add to your schema.prisma

    generator erd {
      provider = "prisma-erd-generator"
    }

    Run the generator

    npx prisma generate

    Example ER Diagram

    Versions

    • Prisma >= 4 use 1.x.x
    • Prisma <4 use 0.11.x

    Options

    Additional configuration

    Output

    Change output type and location

    Usage

    generator erd {
      provider = "prisma-erd-generator"
      output = "../ERD.svg"
    }

    Extensions

    • svg (default: ./prisma/ERD.svg)
    • png
    • pdf
    • md

    Theme

    Theme selection

    Usage

    generator erd {
      provider = "prisma-erd-generator"
      theme = "forest"
    }

    Options

    • default (default)
    • forest
    • dark
    • neutral

    Disabled

    You won't always need to generate a new ER diagram. To disabled running this generator just add an environment variable to the environment running prisma generate.

    DISABLE_ERD=true

    Debugging

    If you have issues with generating or outputting an ERD as expected, you may benefit from seeing output of the steps to making your ERD. Enable debugging by either adding the following environment variable

    ERD_DEBUG=true

    or adding in the debug configuration key set to true

    generator erd {
      provider = "prisma-erd-generator"
      erdDebug = true
    }

    and re-running prisma generate. You should see a directory and files created labeling the steps to create an ER diagram under prisma/debug.

    Please use these files as part of opening an issue if you run into problems.

    Table only mode

    Table mode only draws your models and skips the attributes and columns associated with your table. This feature is helpful for when you have lots of table columns and they are less helpful than seeing the tables and their relationships

    generator erd {
      provider = "prisma-erd-generator"
      tableOnly = true
    }

    Include relation from field

    By default this module skips relation fields in the result diagram. For example fields userId and productId will not be generated from this prisma schema.

    model User {
      id            String         @id
      email         String
      favoriteProducts  FavoriteProducts[]
    }
    
    
    model Product {
      id              String        @id
      title           String
      inFavorites  FavoriteProducts[]
    }
    
    model FavoriteProducts {
      userId      String
      user        User    @relation(fields: [userId], references: [id])
      productId   String
      product     Product @relation(fields: [productId], references: [id])
    
      @@id([userId, productId])
    }
    

    It can be useful to show them when working with RDBMS. To show them use includeRelationFromFields = true

    generator erd {
      provider = "prisma-erd-generator"
      includeRelationFromFields = true
    }

    Contributors

    Thanks goes to these wonderful people (emoji key):

    John Fay
    John Fay

    🚧 💻 🤔 🐛
    Jonas Strassel
    Jonas Strassel

    🐛 💻
    Steve Gray
    Steve Gray

    💻 🤔
    Jason Abbott
    Jason Abbott

    🐛 💻
    Manuel Maute
    Manuel Maute

    🐛 💻
    James Homer
    James Homer

    💻
    Jan Piotrowski
    Jan Piotrowski

    🐛 💻 👀
    Luke Evers
    Luke Evers

    💻
    rikuyam
    rikuyam

    💻
    Francis Manansala
    Francis Manansala

    🐛
    Vitalii Yarmus
    Vitalii Yarmus

    💻
    Petri Julkunen
    Petri Julkunen

    🐛
    D-PONTARO
    D-PONTARO

    💻

    This project follows the all-contributors specification. Contributions of any kind welcome!

    Install

    npm i prisma-erd-generator

    DownloadsWeekly Downloads

    26,775

    Version

    1.2.5

    License

    MIT

    Unpacked Size

    45 kB

    Total Files

    8

    Last publish

    Collaborators

    • keonik