🚀 Exciting New Feature: Schema Changelog. Watch video now! 🍿
built by

Build a database documentation easily 😎

A free & simple tool to create web-based database documentation using DSL code.

Designed for developers. Integrate seamlessly with your development workflow.

Improving Communication of Thousands of Databases On The Planet

  • dbdocs - client logo
  • dbdocs - client logo
  • dbdocs - client logo
  • dbdocs - client logo
  • dbdocs - client logo
  • dbdocs - client logo
  • dbdocs - client logo
  • dbdocs - client logo
  • dbdocs - client logo
  • dbdocs - client logo
  • dbdocs - client logo
  • dbdocs - client logo
  • dbdocs - client logo
  • dbdocs - client logo
dbdocs - Docs Image
“dbdocs helps a lot when designing new systems, like a canvas to start thinking about how the database tables should be organized, and after that phase obviously as living documentation.
Christine / Senior Database Architect

Why dbdocs?

dbdocs - Docs Image
Cloud-based database documentation

From high-level structure to detailed table metadata. See visual relationships between tables.

dbdocs - Docs Image
Database As Code

Define database structure using DSL.
Powered by the popular open-source database markup language DBML.

dbdocs - Docs Image
Secure & Easy Sharing

Protect your document with password.
Easily share database document with new developers or external clients using secure URLs.

dbdocs - Docs Image
Integrated with DevOps Workflow

Check in database structure into Git.
Integrate seamlessly with your CI/CD.

How dbdocs works

Define your database structures using simple, standardized language

Define your database schema using DBML, a simple and open-source standard language for defining database structure.

Store the file locally on your computer or check into Git.

Project social_blogging_site {
database_type: 'PostgreSQL'
Note: 'Social Blogging Site Database'
}

Table users {
id integer
username varchar
role varchar
created_at timestamp
}

Table posts {
id integer [primary key]
title varchar
body text [note: 'Content of the post']
user_id integer
status post_status
created_at timestamp
}

Enum post_status {
draft
published
private [note: 'visible via URL only']
}

Ref: posts.user_id > users.id // many-to-one

Build dbdocs project using simple command lines

Install dbdocs CLI and push DBML code to a project.

Set password protection for your project.

## Download dbdocs command line
$ npm install -g dbdocs
dbdocs install...


## Generate dbdocs view
$ dbdocs build database.dbml --project=your_project
Pushing new database schema to project your_project...
Done. Visit: https://dbdocs.io/username/your_project

Done. Beautiful, cloud-based database documentation site created

Browse through tables and fields, visualize relationships between tables.

Share with internal development team and external clients.

dbdocs - Docs Image

Database Communication has changed for the better 🙌

Visualizing complex relationships so that I can offload my own mental map of all the relationships. I could easily see all of the various tables I would need to update or delete records from to successfully remove a user record.
testimonial image
Chief Technology Officer
Ryan Walden from Ecgo
Both understanding database structures and making it easier to explain them to others. Part of my data governance strategy.
testimonial image
Data Governance Manager
Dom Gittins from Speedy Services
I was able to get database architecture before starting actual coding, before applying scheme to actual database. Also I was able to share with other team members and get review.
testimonial image
Software Engineer
Gagik Mirzoyan from Mondu
organize doc easily & reduce time to write doc because it's auto-generated from dbdiagram
testimonial image
System Analyst
Nattanon Sornchumni from Amity Solutions
Easy to understand and easy to generate documentation from our dbt projects that we can use to evangelize data at our company.
testimonial image
Director of Engineering
Corey O'brien from Wisetack
Professional shareable documentation that's easy to generate with some sql queries - so much nicer than manually compiling stuff for 300+ tables :)
testimonial image
Data & Insights Manager
Jillian Pennington from Wild bamboo
It is convenient for me to describe the data model in db docs. I can share my model with the whole team. I don't need any other tools to describe the data model.
testimonial image
System Analyst
Zinoviev from miramedix
The ability to share a beautiful documented view of the schema of the main DB I'm dealing with at work with data scientists and security engineers at my company.
testimonial image
Software Engineer
Andreas Lind from Workday
ability to save db structure within the repository alongside with code. no apps needed to create/view schema. clean and simple dbml syntax
testimonial image
CEO / CTO
Dmitry Babenko from ErgoServ

Built with software development teams in mind

dbdocs - Docs Image

Internal Development Team

  • Easily onboard new developers or business teams (Sales, BA) by looking at a simple, visualized version of their database.
  • The whole team can keep the documents updated as the project goes.
dbdocs - Docs Image

Software Development Agency

  • Explain complex schema with notes, references and relationships of each field.
  • Easily hand over the project database structure in DBML for future maintenance.

Frequently Asked Questions

What markup language is the dbdocs following?

We use DBML - Database Markup Language, a markup language designed to easily document database structures.

DBML is also completely open-source on Github.

Is my dbdocs project public? How can I make it private?

Your dbdocs project is set to be public by default. However, you can follow our instructions here to secure it or remove the project after testing.

My company has strict security requirements, do you provide a self-hosted version?

We understand the importance of safeguarding your data. If you're looking for a self-hosted version of dbdocs, simply fill out this form, and our team will be in touch to discuss your specific requirements.

How can I integrate this with my development workflow?

Step 1 - Create a database.dbml in your root folder of your Git repo. Type up your database definition there.

Step 2 - Design a simple hook to push database.dbml to your dbdocs project (run $ dbdocs build database.dbml) everytime a commit is made.

Step 3 - Make sure when you make database migration, update database.dbml with the relevant change.

How can I delete a project?

Simply run $ dbdocs remove <project_name>

Built with passion for data ❤️

dbdocs.io is built by the folks at holistics.io - a powerful BI platform that reduces your need for data engineering.
We empower your analysts with SQL to build your data warehouse, and give them the tools to build automated reporting routines that deliver insights to everyone.