npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@sdelements/flan

v0.1.0-alpha.10

Published

A tasty tool that lets you save, load and share postgres snapshots with ease.

Downloads

596

Readme

Usage

$ npm install -g @sdelements/flan

$ flan init
running setup...

$ flan save [email protected]
saving...

$ flan load [email protected]
loading...

$ flan publish [email protected]
publishing...

$ flan available
available snapshots...

$ flan (-v|--version|version)
@sdelements/flan/0.1.0-alpha.0 darwin-x64 node-v14.16.1

$ flan --help [COMMAND]
USAGE
  $ flan COMMAND
...

How it works

Under the hood flan is a convenient wrapper for pgdump and pgrestore. It uses parallel jobs by default to ensure dumping/restoring your database is quick.

Sharing database dumps is achieved by leveraging git. Essentially you push a tag to a repository of your choosing (defined in flan.config.js) and others can then pull it with flan fetch. We chose to use git because it fits well with our internal tooling and process but we understand it may not be the best solution for you. Pull requests are welcome if you're interested in using S3/Azure/etc as a store 🙂

:warning: WARNING: Please don't use flan in situations where you can't afford data loss.

Commands

flan autocomplete [SHELL]

display autocomplete installation instructions

USAGE
  $ flan autocomplete [SHELL]

ARGUMENTS
  SHELL  shell type

OPTIONS
  -r, --refresh-cache  Refresh cache (ignores displaying instructions)

EXAMPLES
  $ flan autocomplete
  $ flan autocomplete bash
  $ flan autocomplete zsh
  $ flan autocomplete --refresh-cache

See code: @oclif/plugin-autocomplete

flan available

lists available dumps

USAGE
  $ flan available

OPTIONS
  -c, --config=config     [default: ./flan.config.json] Path to configuration file
  -x, --extended          show extra columns
  --columns=columns       only show provided columns (comma-separated)
  --csv                   output is csv format [alias: --output=csv]
  --filter=filter         filter property by partial string matching, ex: name=foo
  --no-header             hide table header from output
  --no-truncate           do not truncate output to fit screen
  --output=csv|json|yaml  output in a more machine friendly format
  --sort=sort             [default: tag] property to sort by (prepend '-' for descending)

EXAMPLE
  $ flan available

See code: src/commands/available.ts

flan delete DELETEFILE

delete a local database dump

USAGE
  $ flan delete DELETEFILE

ARGUMENTS
  DELETEFILE  name of file to delete

OPTIONS
  -c, --config=config  [default: ./flan.config.json] Path to configuration file

EXAMPLES
  $ flan delete myDB
  $ flan delete [email protected]

See code: src/commands/delete.ts

flan fetch FILE

fetch specified dump file from a remote repository

USAGE
  $ flan fetch FILE

ARGUMENTS
  FILE  name of the file

OPTIONS
  -c, --config=config  [default: ./flan.config.json] Path to configuration file

EXAMPLE
  $ flan fetch filename

See code: src/commands/fetch.ts

flan help [COMMAND]

display help for flan

USAGE
  $ flan help [COMMAND]

ARGUMENTS
  COMMAND  command to show help for

OPTIONS
  --all  see all commands in CLI

See code: @oclif/plugin-help

flan init

Initializes flan for this project

USAGE
  $ flan init

OPTIONS
  -c, --config=config  [default: ./flan.config.json] Path to configuration file
  -y, --yes            Auto confirm directory creating questions

EXAMPLES
  $ flan init
  Config file found at home/flan.config.js

  $ flan init
  A config file will be created, continue? [y/n]

  $ flan init -c /some-folder/flan.config.json
  Config file found at home/flan/some-folder/flan.config.json

  $ flan init -y -c /some-folder/flan.config.json
  Config file found at /home/flan/some-folder/flan.config.json
  The base directory has been created successfully at /home/flan/some-folder/.flan
  The save directory has been created successfully at /home/flan/some-folder/.flan/local
  Git repository initialized at /home/flan/some-folder/.flan/repo

See code: src/commands/init.ts

flan list

lists available dumps

USAGE
  $ flan list

OPTIONS
  -c, --config=config  [default: ./flan.config.json] Path to configuration file

EXAMPLE
  $ flan list

See code: src/commands/list.ts

flan load INPUT

load database from dump

USAGE
  $ flan load INPUT

ARGUMENTS
  INPUT  name of input file

OPTIONS
  -c, --config=config  [default: ./flan.config.json] Path to configuration file
  --drop-db            Drops and re-creates the DB before restoring it's data
  --quiet              Supress errors from pg_restore

EXAMPLES
  $ flan load myDB
  $ flan load --drop-db --quiet myDB

See code: src/commands/load.ts

flan publish FILE

publish specified dump file to a remote repository

USAGE
  $ flan publish FILE

ARGUMENTS
  FILE  name of the file

OPTIONS
  -c, --config=config  [default: ./flan.config.json] Path to configuration file

EXAMPLE
  $ flan publish filename

See code: src/commands/publish.ts

flan save OUTPUT

save current database to dump

USAGE
  $ flan save OUTPUT

ARGUMENTS
  OUTPUT  name of output file

OPTIONS
  -c, --config=config  [default: ./flan.config.json] Path to configuration file

EXAMPLE
  $ flan save myDB

See code: src/commands/save.ts

flan unpublish FILE

unpublish specified database dump from a remote repository

USAGE
  $ flan unpublish FILE

ARGUMENTS
  FILE  name of the file

OPTIONS
  -c, --config=config  [default: ./flan.config.json] Path to configuration file

EXAMPLE
  $ flan unpublish [email protected]

See code: src/commands/unpublish.ts