🚀 I built supabase-markdown — A tool to generate a full Supabase ERD across all schemas (because Visualizer can’t)
Source: Dev.to

Introduction
Hey folks 👋


If you’ve used Supabase Visualizer, you know it’s great — but it has one limitation:
You can only view one schema at a time.
For small projects that’s fine, but once your app grows and you have multiple schemas such as public, storage, auth, graphql_public, and custom schemas, it becomes impossible to see the entire database structure at a glance. I needed a “global view” badly, so I built it.
🔥 Introducing supabase-markdown
GitHub:
Install via npm:
pnpm add -D supabase-markdown
🧠 What problem does it solve?
Supabase Visualizer can only display one schema at a time, making it hard to understand the true structure of your database. With supabase-markdown you get:
- One file
- One diagram
- Every table
- Across every schema
- All relationships shown together
Now you can generate a single unified ERD like the one below.
Example ERD (Mermaid)
erDiagram
accounts ||--o{ posts : account_id
posts ||--o{ post_hashtags : post_id
hashtags ||--o{ post_hashtags : hashtag_id
profiles ||--|| accounts : id
storage.objects ||--o{ public_posts : image_id
All in one place. No clicking through schemas.
🛠️ How it works
Supabase already provides a full schema representation via:
supabase gen types typescript
The generated TypeScript file contains definitions for:
- tables
- columns
- enums
- relationships
- foreign keys
- schemas
supabase-markdown parses that file and outputs:
- Full Markdown documentation
- Combined cross‑schema ERD
- Tables grouped by schema
- Fully static output (perfect for GitHub, Notion, docs sites)