/clea

🧿 Clea - A framework for writing CLI applications quickly

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Clea - A lightweight framework for creating CLI applications in python

Clea is uses type annotations to generate the command/group defintions and parse the arguments at the runtime. To start with clea run

pip3 install clea

Define you first command using

from typing_extensions import Annotated

from clea.params import Integer
from clea.wrappers import command

@command
def add(
    n1: Annotated[int, Integer()],
    n2: Annotated[int, Integer()],
) -> None:
    """Add two numbers"""

    print(f"Total {n1 + n2}")

Invoke the command at runtime using

from clea.runner import run

if __name__ == "__main__":
    run(cli=add)

The example is taken from add.py in the examples folder.

You can check the command definition using

$ python add.py --help

Usage: add [OPTIONS] N1 N2

        Add two numbers

Options:

    --help                        Show help and exit.

Execute the command using

$ python add.py 2 3

Total 5

Read more about the usage of clea in the docs