module-cli
Bootstrap extensible single-module python CLIs
Installation
With pipx
This package is intended to generate python modules that function as CLIs and therefore shouldn't be a dependency of any module/package that it generates. Because of this it's recommended to use this package via pipx:
pipx run module-cli /path/to/module.py
With pip
If you really want this package as one of your package's dependencies, then install via pip in the usual way:
pip install module-cli
Which you can then use the CLI:
$ module-cli -h
usage: module-cli [-h] [-v] [-D] [out]
Bootstrap a single-module python CLI
positional arguments:
out File to write to. (default: -)
optional arguments:
-h, --help show this help message and exit
-v, --version show program's version number and exit
-D, --debug run program in debug mode
Installing your CLI
The modules generated by module-cli contain a function cli(). This function is the one you'll likely want to point to if you intend to turn your module into an installable command-line application.
-
setup.cfg:[options.entry_points] console_scripts = my_cli = my_pkg.my_module:cli
-
setup.py:setup( entry_points = { 'console_scripts': ['my_cli=my_pkg.my_module:cli'], } )
-
pyproject.toml(poetry):[tool.poetry.scripts] my_cli = "my_pkg.my_module:cli"
Contributing
- Have or install a recent version of
poetry(version >= 1.1) - Fork the repo
- Setup a virtual environment (however you prefer)
- Run
poetry install - Run
pre-commit install - Add your changes (adding/updating tests is always nice too)
- Commit your changes + push to your fork
- Open a PR
Metadata
Release files for module-cli 22.4.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| module-cli-22.4.2.tar.gz | 4.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| module_cli-22.4.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 8.2 kB
Release files / module-cli-22.4.2.tar.gz
| Download URL | module-cli-22.4.2.tar.gz |
|---|---|
| Size | 4.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fc4cee5372867ddd194e8f1760e21e71eacf61fcb6d5248f31c19911b90cce1a
|
|
BLAKE2b-256 checksum How to use checksums |
532b670c3685410cc0d9c5367c9c5d35e2d6104a506a79408780155e0a7f447f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.1.12 CPython/3.10.4 Linux/5.13.0-1021-azure
|
Release files / module_cli-22.4.2-py3-none-any.whl
| Download URL | module_cli-22.4.2-py3-none-any.whl |
|---|---|
| Size | 4.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6d2c71f24b47a2291cfcd6174b0811b325e789083c31b0c8a2a7ddd734c83600
|
|
BLAKE2b-256 checksum How to use checksums |
c2c4d1e39cc4e12359f08b4f1b82ba543359fab75ed088add5de36e316d3375f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.1.12 CPython/3.10.4 Linux/5.13.0-1021-azure
|