dbdocs¶
An alternative dbt docs site — catalog + ERD + column-level lineage.
Turn your dbt artifacts into a single self-contained index.html: a browsable catalog, an interactive lineage DAG and ERD, and column-level lineage derived straight from your compiled SQL. No server, no database, no build step — just a file you can open or host anywhere.
The demo is a real dbdocs site built from the jaffle_shop dbt project — poke around the catalog, the lineage DAG, the ERD, and column-level lineage.
What you get¶
dbt's own docs are great until you want lineage at the column level — that's the gap dbdocs fills.
- Catalog navigation grouped by database and schema, with client-side search (no backend).
- Per-model detail — columns (type / tags / description), compiled and raw SQL, and the macros each model resolves.
- Interactive graphs — a node-level lineage DAG and an ERD, both built on React Flow: pan / zoom / minimap, automatic dagre layout, filter-and-focus, and deep-links to any node.
- Column-level lineage traced from each model's compiled SQL via sqlglot.
- Dark / light theme.
- Versioned deploy with a built-in version dropdown — no mike, no plugins.
Installation¶
Requires Python 3.10+
dbdocs leans on the dbt artifact parser and sqlglot, both of which long ago moved past Python 3.9 — so we did too. Upgrading your interpreter is the way forward (it's worth it).
Verify installation:
Quickstart¶
First, produce dbt artifacts in your dbt project (the bit dbdocs reads):
Then generate, serve, and open the site:
dbdocs generate # builds ./site/index.html with all data baked in
dbdocs serve # static http server on http://127.0.0.1:8000
Head to the Quickstart guide for the full walkthrough.
Contributing¶
Contributions are welcome — bugs, features, docs, typos. See the Contributing Guide.
If dbdocs saves you some clicks, consider buying me a coffee.