Skip to main content

Decorators for terminal-based wait animations.

Project description

terminal_animation

A simple package to make beautiful terminal wait animations

Install

pip install terminal-animation

How to use

import animation
import time

# 1 use as class
wait_animation = animation.Wait()
wait_animation.start()
do_something()
wait_animation.end()

#2 use as decorator
@animation.wait()
def do_something_else():
    # long function
    time.sleep(5)

Customization

The package uses a default animation with dots. It allows users to customize the the animation with different parameters.

The default settings are:

color: white
speed: 0.2
animation = ['    ','.   ','..  ','... ','....']

Color

The color of the characters. Available options are:

  • black ...
  • red ...
  • green ...
  • yellow ...
  • blue ...
  • magenta ...
  • cyan ...
  • white ...

Speed

The speed between, the animation states.

0 < speed < 1

Animation

To use a custom animation, you have to pass a string array containing the seperate steps of the animation. For example, a simple clock animation would look like this

clock = ['-','\\','|','/']

@animation.wait(clock)
def do_something():
    # long function

Examples

# default animation (white, dots, default speed)
@animation.wait()
def default():
    time.sleep(10)

# clock animation (white, default speed)
clock = ['-','\\','|','/']

@animation.wait(clock)
def do_something():
    time.sleep(10)


# horizontal line animation (blue, default speed)
lines = ['   ','-  ','-- ','---']

@animation.wait(lines, color="blue")
def do_something_else():
    time.sleep(10)


# hashtag animation (cyan, slow)
tags = ["#   ", "##  ", "### ", "####"]

animation = animations.Wait(tags, color="blue", speed=0.5)
animation.start()
time.sleep(4)
animation.stop()

Project details


Download files

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

Built Distribution

terminal_animation-0.6-py3-none-any.whl (3.8 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page