Skip to content

xyzpw/loadspinner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

loadspinner

Pepy Total Downlods PyPI - Python Version GitHub repo size

A CLI based loading spinner which is used to tell the user work is being done in the background.

Loadspinner contains more than 20 spinners to choose from, and you can even create your own spinner.

Prerequisites

  • Terminal that accepts ANSI codes

Usage

Creating a spinner:

import loadspinner
spinner = loadspinner.Spinner(spinner_type="classic")

Starting the spinner:

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:

import loadspinner
with loadspinner.Spinner("newton"):
    input("press enter to stop ")

Usage with decorators:

from loadspinner import functionSpinner
@functionSpinner("building")
def doWork():
    # code...
doWork()

Spinners can be made or customized:

import loadspinner
loadspinner.makeSpinner(
    name="myCustomSpinner",
    frames=["a", "b", "c", "1", "2", "3"],
    interval=200,
)

The above code will create its own spinner which can be accessed as its own name, e.g. loadspinner.Spinner("myCustomSpinner")