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

Published: (December 20, 2025 at 02:41 AM EST)
2 min read
Source: Dev.to

Source: Dev.to

Cover image for 🚀 I built supabase-markdown — A tool to generate a full Supabase ERD across all schemas (because Visualizer can’t)

Introduction

Hey folks 👋

Supabase screenshot 1

Supabase screenshot 2

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)
Back to Blog

Related posts

Read more »

Project Structure Checker

What it does PSX auto‑detects the project type Node, Go, etc. and runs a set of rules to ensure the repository has the essential files. If something’s missing...