Metadata-Version: 2.1
Name: loadspinner
Version: 0.4
Summary: a CLI based loading spinner.
Home-page: https://github.com/xyzpw/loadspinner/
Author: xyzpw
Maintainer: xyzpw
License: MIT
Keywords: loading,loader,progress,throbber,spinner
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Utilities
Classifier: Topic :: Terminals
Classifier: Environment :: Console
Classifier: Environment :: Console :: Curses
Classifier: Intended Audience :: Developers
Description-Content-Type: text/markdown
License-File: LICENSE

# loadspinner
![Pepy Total Downlods](https://img.shields.io/pepy/dt/loadspinner)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/loadspinner)
![GitHub repo size](https://img.shields.io/github/repo-size/xyzpw/loadspinner)

A CLI based loading spinner.

## Prerequisites
- Terminal that accepts ANSI codes

## Usage
Creating a spinner:
```python
import loadspinner
spinner = loadspinner.Spinner(spinner_type="classic")
```

Starting the spinner:
```python
spinner.start() # starts the spinner
spinner.stop() # stops the spinner
```

> [!HINT]
> You can also assign a timer to spinners, e.g. `spinner.start(5)` will stop the spinner after 5 seconds.

Usage with context managers:
```python
import loadspinner
with loadspinner.Spinner("newton"):
    input("press enter to stop ")
```

Usage with decorators:
```python
from loadspinner import functionSpinner
@functionSpinner("building")
def doWork():
    # code...
doWork()
```
