node package manager
We need your input. Help make JavaScript better: Take the 2017 JavaScript Ecosystem survey ¬Ľ


ūüĎú Gladstone ūüĎú

Build Status

This is a node module for creating BagIt archives.

The goal of the project is to implement the complete BagIt 0.97 specification.


It can be downloaded and installed from npm:

npm install -g gladstone

Command line usage

To use it from the command-line you provide a source directory that you want want to create a BagIt archive for, a name for the bag, and a hashing algorithm.

gladstone --bagName ~/bagname --originDirectory ~/source --cryptoMethod md5 

The BagIt specification has some optional metadata fields that can be present in the bag-info.txt file. These optional fields can be passed on the command line:

gladstone --bagName ~/bagname --originDirectory ~/source --cryptoMethod md5 --sourceOrganization "Your Org"

Programmatic usage

You can also use gladstone in other node applications by passing the createBagDirectory function a JSON object:

var gladstone = require('gladstone');
gladstone.createBagDirectory({ bagName: '/path/to/new/bag',
                               originDirectory: '/path/to/dir/to/bag',
                               cryptoMethod: 'sha256',
                               sourceOrganization: 'Example Organization',
                               organizationAddress: '123 Street',
                               contactName: 'Contact Name',
                               contactPhone: '555-555-5555',
                               contactEmail: '',
                               externalDescription: 'An example description'