Registry / databases / drizzle-mermaid-generator

drizzle-mermaid-generator

JSON →
library0.0.5jsnpmunverified

Converts Drizzle ORM schema definitions into Mermaid ER diagram markup. Supports PostgreSQL (pgGenerate), MySQL (mysqlGenerate), and SQLite (sqliteGenerate) dialects. Current version: 0.0.5 (early stage, monthly releases). Differentiator: native Drizzle integration with automatic constraint, foreign key, and relationship detection from Drizzle schema files, including support for relational links via Drizzle's relations() API.

npm install drizzle-mermaid-generator
INSTALL
IMPORT
SIG · DRIZZLE-MERMAID-GE
D
drizzle-mermaid-generator
databasesjavascriptv0.0.5
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

pgGenerate
import { pgGenerate } from 'drizzle-mermaid-generator'
import pgGenerate from 'drizzle-mermaid-generator'
Named export, not default.
mysqlGenerate
import { mysqlGenerate } from 'drizzle-mermaid-generator'
const mysqlGenerate = require('drizzle-mermaid-generator')
Package is ESM-only; named import required.
sqliteGenerate
import { sqliteGenerate } from 'drizzle-mermaid-generator'
Named export for SQLite dialect.

Generate Mermaid ER diagram from a Drizzle ORM schema using PostgreSQL dialect.

import { pgGenerate } from 'drizzle-mermaid-generator'; import * as schema from './schema'; // Generate Mermaid ER diagram string const mermaid = pgGenerate({ schema }); console.log(mermaid); // Generate with relationships and write to file pgGenerate({ schema, out: './diagrams/schema.mermaid', relational: true });
Debug
Known issues
gotchaSchema must be imported using import * as schema from './schema' pattern; imported namespace object is required, not individual table exports.
fix
Use `import * as schema from './path/to/schema'` instead of named imports like `import { users } from './schema'`.
affects: >=0.0.1
gotchaCLI --schema option expects a TypeScript file path; it will not resolve ESM module imports automatically. Use with a bundler (e.g., tsx) or transpile first.
fix
Run via `npx tsx node_modules/.bin/drizzle-mermaid-generator ...` or pre-compile schema imports.
affects: >=0.0.1
breakingRequires drizzle-orm >= 0.45.1; older versions may cause type errors due to changes in Drizzle schema types.
fix
Ensure drizzle-orm version is >= 0.45.1.
affects: >=0.0.1
Errors
Common errors & fixes
TypeError: Cannot read properties of undefined (reading 'tables')
Schema namespace not provided as an object with all tables; likely used named imports instead of import * as schema.
fix
Use `import * as schema from './schema'` to import all tables as a single namespace object.
Error: Unsupported dialect. Supported: pg, mysql, sqlite
CLI --dialect flag has an invalid or unsupported value.
fix
Use `-d pg`, `-d mysql`, or `-d sqlite`.
Module not found: Can't resolve 'drizzle-orm'
Missing or incompatible drizzle-orm peer dependency.
fix
Install drizzle-orm >= 0.45.1: `npm install drizzle-orm@latest`.
Upgrade
Version history
0.0.5latest on npm
Audit
Dependencies
drizzle-ormrequiredpeer dependency for schema definition types
Agent activity
26 hits · last 30 days
node
20
Bingbot
2
OpenAI (training)
1
Resources
drizzle-mermaid-generator — npm install drizzle-mermaid-generator · libregistry