Projy is a template-based skeleton generator. In one command line, you can generate project skeletons like Python packages, LaTeX document or any file structure composed of directories and files.
Each file is generated by a different template. It uses the simple core templating system from Python, nothing fancy on that part. You can easily add new templates and new ways to collect data to insert in the created files. As much as possible, Projy tries to be simple to use and extend.
Installation
If you are familiar with Python, it is strongly suggested that you install Projy in virtualenv.
Pip and Distribute
If you are on Linux or Mac OS X, just type:
sudo pip install projy
If no pip available, try ``easy_install``:
sudo easy_install projy
Install from git
If you prefer git, that is ok too. You can get the very latest code at GitHub:
git clone http://github.com/stephanepechard/projy
Usage
As an example, let's create a Python package. The Projy template mostly follows recommandations from The Hitchhiker's Guide to Packaging.
An example
Use simply:
projy PythonPackage TowelStuff
In the same directory as you typed this command, you now have a *TowelStuff* directory, with the following structure:
TowelStuff/
bin/
bootstrap
CHANGES.txt
docs/
index.rst
LICENSE.txt
MANIFEST.in
README.txt
setup.py
towelstuff/
__init__.py
Each file has been created with a specific template, so the package is fully functional, yet empty. Now, let's give a little explanation on each file. You can find further information here.
Options
Projy comes also with one command line option. Type:
projy -l
and you'll see the list of available templates in your installation. That's an easy way to copy/paste the name of the template you want to use next.
Available templates
The currently available templates are:
* a LaTeX book ;
* a Python package ;
* a Python script ;
* a Projy template, meta-style.
See the official doc for more details on created files into these templates. Soon to come, more templates around Django. Of course, anyone can propose some templates, they'll be integrated into Projy.
Product's homepage
Requirements:
· Python