Skip to main content
Help us improve PyPI by participating in user testing. All experience levels needed!

Create command-driven scripts with smart arguments and help derived from decorated functions.

Project description

Simplifies construction of command-based tools. Tool development consists of:

  • Creating module files in one of several known locations using special file extensions.
  • Writing ordinary Python functions.
  • Adding decorators to choose exported functions and to describe argument types/repetition/defaults.
  • Creating new argument type classes as needed.
  • Adding descriptive documentation as structured text in doc strings, decorators, and or separate documentation modules.

Benefits include:

  • Full command line interpretation, including support for both user-friendly simplified syntax and developer-friendly Python expressions.
  • Argument type and quantity checking.
  • Argument validation, conversion and defaults.
  • Keyword assignment for optional arguments.
  • Automatic support for simple bash shell command line completion.
  • Command line help for modules, functions and other documentation.
  • Publish help to pretty text, HTML, XML, or custom format.
  • View help in browser or other viewer based on mime type.
  • On-demand module loading.
  • Import-less inter-module calling and references through special CMDO namespace.
  • Complete support for all normal Python capabilities.
  • Error handling, logging, traceback, etc.
  • Simple interactive prompted command input.

Release history Release notifications

This version
History Node

0.7

Supported by

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