Skip to content

richsurgenor/zzz

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Scaffold for Python

Inspired by Zed Shaw’s recommended Python project structure from Learn Python the Hard Way exercise #46.

Each project you scaffold will create the following directory structure:

/[projectname]/
/[projectname]/setup.py
/[projectname]/bin
/[projectname]/docs
/[projectname]/[projectname]
/[projectname]/[projectname]/__init__.py
/[projectname]/tests
/[projectname]/tests/__init__.py
/[projectname]/tests/[projectname]_tests.py

Both setup.py and [projectname]_tests.py are set up automatically to reference your project name as a module. The rest is up to you!

Installing Scaffold

You can view the scaffold package on PyPi here: http://pypi.python.org/pypi/Scaffold/0.1.3

To install, simply use pip install scaffold

Running Scaffold

Scaffold installs itself as an executable Python script, so just enter the pyscaffold command on your favorite terminal:

pyscaffold -p "projectname" [-d {base directory}]

You can also run scaffold as a python module if needed:

python -m scaffold -p "projectname" [-d {base directory}]

The -p parameter is the name of your project and is a required field. If you don’t specify a base directory with the -d parameter, scaffold will assume that you want to create your project skeleton in your current working directory.

Sample Usage:

Just to give you an idea of what works and what doesn’t…

pyscaffold -p "http-utils" -d /c/repositories/
pyscaffold -p "mutliplex-py"
pyscaffold -p "lazarus" -d ../

Virtualenvwrapper support

Alternatively, if (the excellent) virtualenvwrapper is installed, Scaffold also works as a project template named base. So you could run:

mkproject -t base projectname

Then virtualenvwrapper will create the virtualenv and the project root and Scaffold will do the rest.

License

Licensed under Apache 2.0 – see license.txt for details.

Contribution

I’m not the most experienced Python programmer on the planet, so patches are most certainly welcome :)
-Aaron Stannard

About

Simple project scaffolding for Python

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%