proj

https://badge.fury.io/py/proj.png https://travis-ci.org/larsyencken/proj.png?branch=master https://pypip.in/d/proj/badge.png

A command-line folder manager for many 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.

Installation

Install the package with pip:

pip install git+git://github.com/larsyencken/proj

Then, tell proj where your archive directory is, by adding a line to your .bashrc or .zshrc file:

export PROJ_ARCHIVE=~/Archive

Usage

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
2012/q3/old-crusty-project

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

Features

0.1.0

  • 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