kristiandupont/extract-pg-schema

Extract schema from Postgres

TypeScript

61

816 commits

updated Oct 6, 2026

See the code

README

Extract Schema from Postgres Database

Reads various metadata from your postgres database and return a Javascript object. This package is used by Kanel to generate Typescript types and Schemalint to provide linting of database schemas.

View the documentation here

Installation

npm i extract-pg-schema

Library Usage

You give it a postgres connection config object and some options and it will connect to your database and generate

const { extractSchemas } = require('extract-pg-schema');

async function run() {
  const connection = {
    host: 'localhost',
    database: 'postgres',
    user: 'postgres',
    password: 'postgres',
  };

  const result = await extractSchemas(connection);

  console.log(result);
}

run();

For an example of a generated object, take a look at dvdrental.json file which is generated from the sample Database from PostgreSQLTutorial.com.

CLI Usage

You can also use the CLI to extract the schemas from a database and write it to the console or a file in JSON format.

npx extract-pg-schema -h localhost -p 5432 -U postgres -d postgres > schemas.json

The CLI takes a small subset of the options that pg_dump takes. You can also use the environment variables starting with PG to set the connection parameters.

Usage: extract-pg-schema [options] [DBNAME]

Extract all schemas from a PostgreSQL database and print them as JSON.

Options:
    --help                      show this help
    -h, --host=HOSTNAME         database server host or socket directory
    -p, --port=PORT             database server port
    -U, --username=USERNAME     database user name
    -d, --dbname=DBNAME         database name to connect to
    -n, --schema=SCHEMA         include schema regular expression (may be given multiple times)
    -N, --exclude-schema=SCHEMA exclude schema regular expression (may be given multiple times)

Contributors

Made with contrib.rocks.

kristiandupont/extract-pg-schema

Extract schema from Postgres

TypeScript

61

816 commits

updated Oct 6, 2026

See the code

README

Extract Schema from Postgres Database

Reads various metadata from your postgres database and return a Javascript object. This package is used by Kanel to generate Typescript types and Schemalint to provide linting of database schemas.

View the documentation here

Installation

npm i extract-pg-schema

Library Usage

You give it a postgres connection config object and some options and it will connect to your database and generate

const { extractSchemas } = require('extract-pg-schema');

async function run() {
  const connection = {
    host: 'localhost',
    database: 'postgres',
    user: 'postgres',
    password: 'postgres',
  };

  const result = await extractSchemas(connection);

  console.log(result);
}

run();

For an example of a generated object, take a look at dvdrental.json file which is generated from the sample Database from PostgreSQLTutorial.com.

CLI Usage

You can also use the CLI to extract the schemas from a database and write it to the console or a file in JSON format.

npx extract-pg-schema -h localhost -p 5432 -U postgres -d postgres > schemas.json

The CLI takes a small subset of the options that pg_dump takes. You can also use the environment variables starting with PG to set the connection parameters.

Usage: extract-pg-schema [options] [DBNAME]

Extract all schemas from a PostgreSQL database and print them as JSON.

Options:
    --help                      show this help
    -h, --host=HOSTNAME         database server host or socket directory
    -p, --port=PORT             database server port
    -U, --username=USERNAME     database user name
    -d, --dbname=DBNAME         database name to connect to
    -n, --schema=SCHEMA         include schema regular expression (may be given multiple times)
    -N, --exclude-schema=SCHEMA exclude schema regular expression (may be given multiple times)

Contributors

Made with contrib.rocks.

Project health

Overall

3.6/10

Maintained

2/10

Code review

3/10
OpenSSF Scorecard

Latest release

5.8.2 · Jun 25, 2026

Releases this year

2

Significant stargazers

Alex Rattray

331 followers · starred Apr 2021

Nik Handyman

37 followers · starred Dec 2023