A super-simple way to generate Entity-Relationship Diagrams (ERDs) from your Drizzle schema. Use case (CLI or in-code) and dialect (PG, MySQL, SQLite) agnostic!
Important
Drizzle ERD is in pre-release and is not ready for production-reliant use cases.
If you'd like to use this package right now, in lieu of any proper documentation, here's how to get started.
Call drizzle-erd
directly from npm
or pnpm
from a script in your package.json
like so:
{
//...Rest of package.json
"scripts": {
//...Other scripts
"db:generate-erd": "drizzle-erd --in ./src/or/path/to/schema.ts --out erd.svg"
}
}
The following CLI flags are available to be used with drizzle-erd
.
Name | Flag | Description |
---|---|---|
[Required] Schema source |
--in |
The path to your Drizzle schema.ts file. |
[Required] SVG output |
--out |
The destination path (and filename) of the output SVG. (Overwrites if already exists) |
Debug logs | --verbose |
Provide this flag to print the status of the schema generation with debug-level logging. |
Add your ERD to your readme like this:
<img src="./erd.svg" width=720 />
Call the db:generate-erd
script you defined earlier from a Git pre-commit
hook to make sure your generated ERD is always up-to-date (especially if you're printing it out to your README as above).