face

release calver changelog

face is a Pythonic microframework for building command-line applications:

  • First-class subcommand support
  • Powerful middleware architecture
  • Separate Parser layer
  • Built-in flagfile support
  • Handy testing utilities
  • Themeable help display

Installation

face is pure Python, and tested on Python 3.7+, as well as PyPy. Installation is easy:

pip install face

Then get to building your first application!

from face import Command, echo

def hello_world():
    "A simple greeting command."
    echo('Hello, world!')

cmd = Command(hello_world)

cmd.run()

"""
# Here's what the default help looks like at the command-line:

$ cmd --help
Usage: cmd [FLAGS]

  A simple greeting command.


Flags:

  --help / -h   show this help message and exit
"""