.. todo:: Explain "Command-line Applications"
clint is a python module which is filled with very useful tools for developing command-line applications. It supports features such as; CLI Colors and Indents, Simple and Powerful Column Printer, Iterator based progress bar and Implicit argument handling.
click is an upcoming Python package for creating command-line interfaces in a composable way with as little amount of code as necessary. It’s the “Command-line Interface Creation Kit”. It’s highly configurable but comes with good defaults out of the box.
docopt is a lightweight, highly Pythonic package that allows creating command-line interfaces easily and intuitively, by parsing POSIX-style usage instructions.
Plac is a python module that allows developing command-line applications. In fact plac is a simple wrapper over the python standard library argparse, it hides most of its complexity by using a declarative interface: the argument parser is inferred rather than written down by imperatively. It is targetting especially unsophisticated users, programmers, sys-admins, scientists and in general people writing throw-away scripts for themselves, choosing the command-line interface because it is quick and simple.
Cliff is a framework for building command-line programs. It uses setuptools entry points to provide subcommands, output formatters, and other extensions. The framework is meant to be used to create multi-level commands such as subversion and git, where the main program handles some basic argument parsing and then invokes a sub-command to do the work.