Skip to content

klarna-incubator/postgres-to-docs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

14d048c · Oct 20, 2021

History

65 Commits
Mar 18, 2021
Oct 5, 2021
Mar 12, 2021
Mar 12, 2021
Mar 16, 2021
Mar 11, 2021
Mar 15, 2021
Mar 18, 2021
Mar 18, 2021
Mar 18, 2021
Oct 20, 2021
Mar 12, 2021

postgres-to-docs

Build Status License Developed at Klarna

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

Usage

  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 --output=schema.md

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

Problem

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

Development

Clone the repo, then:

npm install
npm run start:dev

How to contribute

See our guide on contributing.

Release History

See our changelog.

License

Copyright © 2021 Klarna Bank AB

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