Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


Build Status License Developed at Klarna

Make your database documentation smoooth by generating markdown for your schema.


  1. Install through npm
npm install @klarna/postgres-to-docs
  1. Define a json config file
    "host": "localhost",
    "port": 5432,
    "user": "user",
    "password": "password",
    "database": "database"
  1. Run the tool
postgres-to-docs --config=config.json

Where --config is the path to your config file and --outputis the path to the output markdown file


You need to get a quick and easy overview of your database schema but don't want to...

  • Open the source code and find the model definitions
  • Start your database and service, install dependencies, have a proper configuration, and open an external tool like TablePlus or DBeaver
  • Read through your migrations directory to find the latest version of your schema
  • Look through external documentation that might be out of date

Introducing postgres-to-docs!

A Node CLI that renders your schemas as markdown and keeps it up to date! Generates documentation for

  • Tables - PKs, FKs, Nullable and Default values
  • Views
  • User defined types like composites and enums

Future work

  • Additional export formats like entity relationship-diagrams
  • Materialized views
  • Support for watch-mode to rerun the tool on file change


Clone the repo, then:

npm install
npm run start:dev

How to contribute

See our guide on contributing.

Release History

See our changelog.


Copyright © 2021 Klarna Bank AB

For license details, see the LICENSE file in the root of this project.