Create backup archives with generate.
Last updated 3 years ago by doowb .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install generate-backup 
SYNC missed versions from official npm registry.

Create backup archives with generate.


NPM version NPM monthly downloads Build Status

generate-backup demo



When installed globally, the backup generator is available to use through the gen command:

Backup a folder to a tar file using the default task.

$ gen backup --src my-project --dest /backups/my-project

Extract a tar file to a folder using the extract task.

$ gen backup:extract --src /backups/my-project/2017-01-02.tar --dest my-project-2



  • app {Object}: generate instance to add tasks to.


// use as a plugin with existing generate instance
// $ gen backup

// use as a subgenerator on an existing generate instance
// $ gen bkp
app.register('bkp', require('generate-backup'));

Internal API

Internal functions that are used inside the tasks to provide backup and extract functionality.


  • options {Object}: Options to control what is archived.
  • returns {Stream}: The stream created by tar-fs.


backup({src: './', dest: '/backups'});


  • options {Object}: Options to control what is extracted.
  • returns {Stream}: The stream created by tar-fs.


extract({src: '/backups/2017-01-02.tar', dest: './'});

What is "Generate"?

Generate is a command line tool and developer framework for scaffolding out new GitHub projects using generators and tasks.

Answers to prompts and the user's environment can be used to determine the templates, directories, files and contents to build. Support for gulp, base and assemble plugins, and much more.

For more information:

Getting started


Installing the CLI

To run the backup generator from the command line, you'll need to install Generate globally first. You can do that now with the following command:

$ npm install --global generate

This adds the gen command to your system path, allowing it to be run from any directory.

Install generate-backup

Install this module with the following command:

$ npm install --global generate-backup


Run this generator's default task with the following command:

$ gen backup

What you should see in the terminal

If completed successfully, you should see both starting and finished events in the terminal, like the following:

[00:44:21] starting ...
[00:44:22] finished ✔

If you do not see one or both of those events, please let us know about it.


To see a general help menu and available commands for Generate's CLI, run:

$ gen help


All available tasks.


Default backup task that will backup the specified --src folder a .tar file in the specified --dest folder using an optional --ignore flag.

remove spaces in the ignore pattern


# backup all node projects to the /backups/projects folder but ignore any node_modules folders
$ gen backup --dest /backups/projects --src projects --ignore '** /node_modules/{,** /*}'


extract task that will extract the files from the specified --src .tar file to the specified --dest folder using an optional --ignore flag.


# extract the archived projects from /backups/projects/2017-01-02.tar to the ./restore/projects folder.
$ gen backup --dest restore/projects --src /backups/projects/2017-01-02.tar


Default task aliased for backup

Visit Generate's documentation for tasks.

Next steps

Running unit tests

It's never too early to begin running unit tests. When you're ready to get started, the following command will ensure the project's dependencies are installed then run all of the unit tests:

$ npm install && test

Publishing your generator

If you're tests are passing and you're ready to publish your generator to npm, you can do that now with the following command:

Are you sure you're ready?!

Let's go!

$ npm publish


Related projects

  • generate: Command line tool and developer framework for scaffolding out new GitHub projects. Generate offers the… more | homepage
  • micromatch: Glob matching for javascript/node.js. A drop-in replacement and faster alternative to minimatch and multimatch. | homepage
  • tar-fs: filesystem bindings for tar-stream | homepage


Are you using Generate in your project? Have you published a generator and want to share your project with the world?

Here are some suggestions!

  • If you get like Generate and want to tweet about it, please feel free to mention @generatejs or use the #generatejs hashtag
  • Show your love by starring Generate and generate-backup
  • Get implementation help on StackOverflow (please use the generatejs tag in questions)
  • Gitter Discuss Generate with us on Gitter
  • If you publish an generator, thank you! To make your project as discoverable as possible, please add the keyword generategenerator to package.json.


Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

Running tests

Install dev dependencies:

$ npm install -d && npm test


Brian Woodward


Copyright © 2017, Brian Woodward. Released under the MIT license.

This file was generated by verb-generate-readme, v0.2.3, on January 02, 2017.

Current Tags

  • 0.1.0                                ...           latest (3 years ago)

1 Versions

  • 0.1.0                                ...           3 years ago
Maintainers (2)
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (5)
Dev Dependencies (6)
Dependents (0)

Copyright 2014 - 2016 © |