Skip to main content

CLI Application Framework for Python

Project description

Cement is an advanced CLI Application Framework for Python. 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.

Core features include (but are not limited to):

  • Core pieces of the framework are customizable via handlers/interfaces

  • Extension handler interface to easily extend framework functionality

  • Config handler supports parsing multiple config files into one config

  • Argument handler parses command line arguments and merges with config

  • Log handler supports console and file logging

  • Plugin handler provides an interface to easily extend your application

  • Hook support adds a bit of magic to apps and also ties into framework

  • Handler system connects implementation classes with Interfaces

  • Output handler interface renders return dictionaries to console

  • Cache handler interface adds caching support for improved performance

  • Controller handler supports sub-commands, and nested controllers

  • Zero external dependencies* (ext’s with dependencies ship separately)

  • 99% test coverage

  • Extensive Sphinx documentation

  • Tested on Python 2.6, 2.7, 3.1, and 3.2

Note that argparse is required as an external dependency for Python < 2.7 and < 3.2.

More Information

Project details


Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page