Skip to main content

Toolkit for quickly building nice looking command line interfaces

Project description


This is a Python toolkit for quickly building nice looking command line interfaces.

Build Status Code style: black

It also includes the following easy to use components:

  • Spinners
  • Gauge
  • Progress

Spinner(message, style=None)

Picture of a spinner


  • 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: ['◜','◠','◝','◞','◡','◟']


  • run() - Show the spinner on the screen.
  • update_msg(message) - Update the status message that follows the spinner.


from py_clui import Spinner

spinner = Spinner('Processing documents...')

for x in range(100):
    spinner.update_msg('{0} Processed documents'.format(x))

Gauge(value, max_value, width, danger_zone, suffix=None)

Picture of a gauge

Draw a basic horizontal gauge to the screen.


  • value
  • max_value
  • width
  • danger_zone
  • suffix


from py_clui import gauge

total = 100
free = 30

used = total - free

print(gauge(used, total, 20, total * 0.8, 'Used memory'))


Picture of a progress


  • width - The width in characters of progress_bar


  • update(percent) - Return a progress bar width a this percente filled.


from py_clui import Progress

progress = Progress(20)



  1. clui makes NodeJS even more sexy. Python needed something like it.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py_clui-0.0.3.tar.gz (3.0 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page