Skip to main content

CLI Application Framework for Python

Project description

Cement is an advanced CLI Application Framework for Python. It promotes code
re-use by way of a plugin system that enables plugins to be shared between any
application built on Cement. The MVC and overall framework design is very
much inspired by the TurboGears2 web framework. Its goal is to introduce a
standard, and feature-full platform for both simple and complex command line
applications as well as support rapid development needs without sacrificing
quality.

At a minimum, Cement configures the following features for every application:
::
* Multiple Configuration file parsing (default: /etc, ~/)
* Command line argument and option parsing
* Dual Console/File Logging Support
* Internal and External (3rd Party) Plugin support
* Basic "hook" support
* Model/View/Controller support for advanced application design
* Text output rendering with Genshi templates
* Json output rendering allows other programs to access your CLI-API


The above provides any level developer with a solid, and fully functional
cli application from the very start with more or less a single command via
the paster utility. Cement brings an end to the 'hack it out, and [maybe]
clean it up later' routine that we all find ourselves in under deadlines.

Any application can utilize existing plugins from The Rosendale Project, or
from other 3rd party resources to extend functionality. The plugin system is
designed to allow portability of re-usable code.


MORE INFORMATION:

All documentation is available from the official website:

http://builtoncement.org


LICENSE:

The Cement CLI Application Framework is Open Source and is distributed under
the MIT License. Please see the LICENSE file included with this software.

The 'cement.core' package includes a backport of pkgutil from the Python
standard library in order to make the pkgutil.get_data() function available
for Python < 2.6. This file (./src/cement.core/backports/pkgutil.py) is
licensed under the Python Software Foundation license version 2.0. Please see
the LICENSE.psf file included with this software (./src/cement/LICENSE.psf).

Project details


Release history Release notifications

History Node

2.10.12

History Node

2.10.10

History Node

2.10.4

History Node

2.10.2

History Node

2.10.0

History Node

2.8.2

History Node

2.8.0

History Node

2.6.2

History Node

2.6.0

History Node

2.4.0

History Node

2.2.2

History Node

2.2.0

History Node

2.0.2

History Node

2.0.0

History Node

1.9.14

History Node

1.9.12

History Node

1.9.10

This version
History Node

1.0.0

History Node

0.8.18

History Node

0.8.16

History Node

0.8.14

History Node

0.8.12

History Node

0.8.10

History Node

0.8.8

History Node

0.8.6

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page