Skip to content

louisandred/pgdump

Repository files navigation

🛠️ pgdump

Checked with Biome npm version License

Lightweight Node.js wrapper for PostgreSQL pg_dump.
After installation, it downloads the corresponding pg_dump binary based on your system.
In any case, you can download the binary manually by running npm run pgdump-fetch-binary.


🚀 Features

  • Simple Node.js wrapper for PostgreSQL pg_dump
  • Works on all major platforms (Linux, macOS, Windows)
  • Dump database in a file or capture as string
  • Supports standard authentication options
  • Easily configurable with additional pg_dump CLI options

💿 Installation

# Using npm
npm i @louisbm/pgdump
# Using yarn
yarn add @louisbm/pgdump
# Using pnpm
pnpm add @louisbm/pgdump

⚙️ Usage

Basic Example

Dump in a file

import { dumpSchema } from '@louisbm/pgdump';

const backupDatabase = async () => {
  try {
    await dumpSchema({
      host: 'localhost',
      port: 5432,
      database: 'mydb',
      user: 'postgres',
	  outputFile: './database_dump.sql'
    });
  } catch (err) {
    console.error('Error creating database dump:', err);
  }
}

backupDatabase();

Capture the string

import { dumpSchema } from '@louisbm/pgdump';

const backupDatabase = async () => {
  try {
    const sql = await dumpSchema({
      host: 'localhost',
      port: 5432,
      database: 'mydb',
      user: 'postgres',
    });

    console.log('Database dump captured successfully:');
    console.log(sql);
  } catch (err) {
    console.error('Error creating database dump:', err);
  }
}

backupDatabase();

⚡ CLI Usage

@louisbm/pgdump can also be used directly from the command line.

Install globally (optional)

npm i -g @louisbm/pgdump

Basic command

pgdump --host 'localhost' --port 5432 --database 'mydb' --user 'postgres' --file './database_dump.sql'

📚 Contributing

Contributions, issues, and feature requests are welcomed !

To contribute:

  1. Fork the repository
  2. Create a new branch for your feature or fix
  3. Make your changes
  4. Submit a pull request

📄 License

This project is licensed under the MIT License.

About

Lightweight Node.js wrapper for PostgreSQL pg_dump.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors