Skip to main content

A command-line manager for archiving and retrieving projects.

Project description

A command-line folder manager for archiving and restoring a long-term set of projects.

proj assumes the following working setup:

  • You have a directory of active projects that you’re working on (e.g. ~/Projects)
  • You have a directory of inactive projects, your archive (e.g. ~/Archive)

Given this setup, proj helps you add and remove projects from your archive, and keeps your archive organised in <year>/<quarter> subfolders, based on when each project was last worked on.


Install the package with pip:

pip install proj

Then, tell proj where your archive directory is, by creating a ~/.proj.yml file

archive_dir: _archive

You can enable compression for archives by adding more directives to the YAML file:

compression: true
compression_format: bztar

The supported formats are: tar, gztar, bztar and zip.


Use proj to get rid of clutter in your main directory of projects by archiving ones that aren’t being worked on. Proj will detect when you last made a change and file it accordingly.

$ ls
cocktails-that-are-blue   news-for-llamas   old-crusty-project
$ proj archive old-crusty-project
old-crusty-project -> /Users/lars/Archive/2012/q3/old-crusty-project
$ ls
cocktails-that-are-blue   news-for-llamas
$ proj list

Now we’ve archived this project, but we can restore it at any time.

$ proj restore old-crusty-project
/Users/lars/Archive/2012/q3/old-crusty-project -> old-crusty-project
$ ls
cocktails-that-are-blue   news-for-llamas   old-crusty-project


  • proj archive: archive a project to an appropriate directory
  • proj restore: restore a project from the archive
  • proj list: search the archive for a project


0.2.0 (dev)

  • Moved to Python 3.x only support to allow type hinting
  • Move to a config file rather than environment variables
  • Support compression for archiving and restoring

0.1.0 (2014-01-11)

  • First release on PyPI.
  • Archive, restore and search features.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for proj, version 0.2.0
Filename, size File type Python version Upload date Hashes
Filename, size proj-0.2.0-py2.py3-none-any.whl (8.6 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size proj-0.2.0.tar.gz (19.6 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page