py-clui
py-clui copied to clipboard
Python toolkit for quickly building nice looking command line interfaces
Py-clui
This is a Python toolkit for quickly building nice looking command line interfaces.
It also includes the following easy to use components:
- Spinners
- Gauge
- Progress
Spinner(message, style=None)

Parameters
message- The default status text to display while the spinner is spinning.style- Array of graphical characters used to draw the spinner. By default, on Windows: ['|', '/', '-', ''], on other platforms: ['◜','◠','◝','◞','◡','◟']
Methods
run()- Show the spinner on the screen.update_msg(message)- Update the status message that follows the spinner.
Example
from py_clui import Spinner
spinner = Spinner('Processing documents...')
spinner.run()
for x in range(100):
spinner.update_msg('{0} Processed documents'.format(x))
spinner.run()
Gauge(value, max_value, width, danger_zone, suffix=None)

Draw a basic horizontal gauge to the screen.
Parameters
valuemax_valuewidthdanger_zonesuffix
Example
from py_clui import gauge
total = 100
free = 30
used = total - free
print(gauge(used, total, 20, total * 0.8, 'Used memory'))
Progress(width=20)

Parameters
width- The width in characters of progress_bar
Methods
update(percent)- Return a progress bar width a this percente filled.
Example
from py_clui import Progress
progress = Progress(20)
print(progress.update(.5))
Motivation
- clui makes NodeJS even more sexy. Python needed something like it.