Python module for building component-based CLIs.
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
martinjose a34b657d82 Updating release version.
I decided I hated the language on the Read Me and I just NEEDED to fix it.
2026-10-19 20:02:49 +00:00
.forgejo/workflows Handle Forgejo release publication when tag is pushed 2026-10-19 14:30:15 -05:00
docs Handle Forgejo release publication when tag is pushed 2026-10-19 14:30:15 -05:00
scripts Point release version errors to pyproject.toml 2026-10-19 14:52:24 -05:00
src/cli_components Initial commit: add cli-components package 2026-10-19 12:45:14 -05:00
tests Point release version errors to pyproject.toml 2026-10-19 14:52:24 -05:00
.gitignore Initial commit: add cli-components package 2026-10-19 12:45:14 -05:00
LICENSE Initial commit: add cli-components package 2026-10-19 12:45:14 -05:00
MANIFEST.in Add manual Forgejo release and PyPI publishing workflows 2026-10-19 13:51:45 -05:00
pyproject.toml Updating release version. 2026-10-19 20:02:49 +00:00
README.md Updating documentation. 2026-10-19 15:01:14 -05:00

cli-components

A small, dependency-free Python library for composing argparse commands and nested subcommands.

Requires Python 3.11 or newer.

Enables you to create CLIs with component elements and options for each component.

Examples:

python3 docs/examples/project_cli.py --help
python3 docs/examples/project_cli.py --daemon docker project new demo -v
python3 docs/examples/project_cli.py project template compile --force

Import the package as cli_components.

See docs/usage.md for the API, evaluation result, and more examples.

Licensed under the GNU Affero General Public License v3.