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.

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

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 protect it with a password 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.