Dead-simple terminal spinners and progress indicators for CLI scripts
pip install philiprehberger-cli-spinnerDead-simple terminal spinners and progress indicators for CLI scripts.
pip install philiprehberger-cli-spinner
from philiprehberger_cli_spinner import spinner
with spinner("Loading data"):
do_work()
from philiprehberger_cli_spinner import spinner
s = spinner("Deploying")
s.start()
try:
deploy()
s.succeed("Deployed successfully")
except Exception:
s.fail("Deploy failed")
from philiprehberger_cli_spinner import spin
@spin("Computing")
def heavy_task():
...
from philiprehberger_cli_spinner import spinner
with spinner("Step 1") as s:
step_one()
s.update("Step 2")
step_two()
Five built-in animation styles are available:
from philiprehberger_cli_spinner import spinner
with spinner("Working", style="braille"):
do_work()
Available styles: dots, line, bounce, braille, arrow.
| Function / Method | Description |
|---|---|
spinner(text, *, style) | Create a Spinner (context manager) |
spin(text, *, style) | Decorator that shows a spinner during execution |
Spinner.start() | Start the spinner animation |
Spinner.stop() | Stop the spinner and clear the line |
Spinner.update(text) | Change the displayed text |
Spinner.succeed(text) | Stop with a success symbol |
Spinner.fail(text) | Stop with a failure symbol |
Spinner.warn(text) | Stop with a warning symbol |
Spinner.info(text) | Stop with an info symbol |
pip install -e .
python -m pytest tests/ -v
If you find this project useful: