Skip to content
/ cloup Public
forked from janluke/cloup

Library to build command line interfaces based on (and 100% compatible) with Click. It's like using Click but with more built-in features: option groups, constraints (e.g. mutually exclusive params), command aliases, help themes, "did you mean ...?" suggestions and more.

License

Notifications You must be signed in to change notification settings

oeko2002/cloup

Repository files navigation

Overview

Master branch Tests status Coverage Status Documentation Status (master branch)
Latest release Latest release on PyPI Supported versions Documentation Status (latest release)

Cloup (= Click + groups) contains a set of Click extensions that enable you to:

  • define option groups with a clean API;
  • define constraints, including conditional constraints, on any group of parameters (e.g. mutually_exclusive, RequireAtLeast(1) etc.);
  • (optionally) show an auto-generated description of defined constraints in the command help;
  • organize the subcommands of a MultiCommand in multiple help sections.

These features are implemented in three "mixins" following the same pattern of click-contrib extensions (cooperative multiple inheritance). For ease of use, Cloup also provides:

  • its own versions of Click commands classes, obtained by mixing Click classes with the above mentioned mixins;
  • its own versions of Click command decorators, for creating such commands.

Documentation

Read more in the documentation:

About

Library to build command line interfaces based on (and 100% compatible) with Click. It's like using Click but with more built-in features: option groups, constraints (e.g. mutually exclusive params), command aliases, help themes, "did you mean ...?" suggestions and more.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 98.7%
  • Makefile 1.3%