Skip to main content

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 | RSS feed

This version


Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page