Application Framework for Python
Go to file
2009-12-15 21:16:10 -06:00
cement stable app, plugin, helper setup. 2009-12-15 21:14:26 -06:00
etc/plugins.d adding tempita to requires 2009-12-06 16:53:12 -06:00
examples/helloworld stable app, plugin, helper setup. 2009-12-15 21:14:26 -06:00
plugins stable app, plugin, helper setup. 2009-12-15 21:14:26 -06:00
.gitignore added helpers paste templates 2009-12-10 22:31:23 -06:00
GitChangeLog Release 0.4 2009-12-15 21:16:10 -06:00
INSTALL cleanup, and removing handlers namespace 2009-12-07 15:39:32 -06:00
LICENSE Release under the PSF License from here on out 2009-12-13 18:28:00 -06:00
MANIFEST.in adding MANIFEST.in, and fixing paster issues 2009-12-06 23:53:34 -06:00
README Updating README info 2009-12-14 20:23:27 -06:00
setup.py refactor of how plugins load 2009-12-14 19:53:41 -06:00
TODO stable app, plugin, helper setup. 2009-12-15 21:14:26 -06:00

NAME: Cement

CREATOR/MAINTAINER: BJ Dierkes <wdierkes@5dollarwhitebox.org>

DESCRIPTION:

Cement is a CLI Application Framework for Python. It promotes code re-use by 
way of plugins and helper libraries that can be maintained internally, or 
shared with the community. For a solid development base, build your next cli 
on cement!

At a minimum, Cement easily sets up the following:

    Configuration file parsing [using ConfigObj]
    Command line arguments and option parsing [using OptParse]
    Logging [using Logger]
    Plugin support [partially using setuptools]
    Basic "hook" support


These pieces are important for a fully functional command line application. 
Normally to accomplish what's listed above would require dozens of lines of 
work before you even begin coding your application. With Cement, the above is 
configured with more or less a single command (via paste).

Cement is most generally used as a starting point from which to begin 
developing a command line type application. That said, applications using 
cement can also share plugins with either cement or other applications using 
cement.


GETTING STARTED:

Stable versions of Cement can be installed via the cheeze shop:

    $ easy_install cement


Development versions of Cement can be checked out of Git:

    $ git clone git://github.com/derks/cement.git
    
    $ cd cement
    
    $ python setup.py install
    
    
Additionally, Cement applications, plugins, and helpers can be created via 
PasteScript. Once Cement is installed, the following command will create a 
command line application built on top of the Cement Framework:

    $ paster cement-app <myapp>


The following command will create an external plugin for your application:

    $ paster cement-plugin <myapp> <myplugin>


Have a helper library you want to make plugable?

    $ paster cement-helper <myapp> <myhelper>