Skip to main content

GitHub License GitHub file size in bytes PyPI - Version PyPI - Downloads Pepy Total Downloads

Logo tinyprogress

TinyProgress is a minimal and lightweight progress bar module for Python. It provides an easy way to track progress in loops and iterables without requiring external dependencies.

bars

🚀 Features

  • ✅ Simple and lightweight (no external dependencies)
  • ✅ Customizable progress bar length and characters
  • ✅ Supports named tasks
  • ✅ Works with any iterable

📦 Installation

Since TinyProgress is a single-file module, you can simply copy tinyprogress.py into your project.

Alternatively, install it via pip (once published to PyPI):

pip install tinyprogress

🛠 Usage

Basic Progress Bar

from tinyprogress import progress
import time

for i in progress(range(100)):
    time.sleep(0.05)  # Simulating work

Custom Progress Bar Length

for i in progress(range(100), bar_length=50):
    time.sleep(0.05)

Named Task Progress Bar

for i in progress(range(100), task_name="Downloading"):
    time.sleep(0.05)

Using Custom Characters

for i in progress(range(100), fill_char='#', empty_char='-'):
    time.sleep(0.05)

Using Custom Colors

def bar_color(progress: float) -> str:
    if progress < 0.7:  # 70%
        return '\033[31m'
    return '\033[32m'

def text_color(progress: float) -> str:
    return '\033[35m'


for i in progress(
    range(100),
    task_name='Colored bar',
    fill_char='—',
    start_char=' ',
    end_char=' ',
    bar_color=bar_color,
    text_color=text_color
):
    time.sleep(0.05)

You can also use the Colorama module to set the colors.

from colorama import Fore

def bar_color(progress: float) -> str:
    if progress < 0.7:  # 70%
        return Fore.RED
    return Fore.GREEN

#...

🤝​ Contributing

First of all, thank you if you are interested in contributing to this project. To contribute, please carefully read the CONTRIBUTING file and follow its guidelines.

📜 License

GNU General Public License v3, see LICENSE file.

Metadata

Release files for tinyprogress 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tinyprogress 1.2.0
File Size Uploaded
tinyprogress-1.2.0.tar.gz 17.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for tinyprogress 1.2.0
File Interpreter ABI Platform
tinyprogress-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 33.4 kB

Release files / tinyprogress-1.2.0.tar.gz

Download URL tinyprogress-1.2.0.tar.gz
Size 17.2 kB
Tags Source
SHA-256 checksum
How to use checksums
9bd61e540f50b8c6ddc441088bfbd824acaeee6f7ed0dfdb07a8c50370a10b5c
BLAKE2b-256 checksum
How to use checksums
0e0c0b55de0e0e3764cfbce6ccba845cccaddcb09eb45989c1d57c8a1ec90d1e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.3

Release files / tinyprogress-1.2.0-py3-none-any.whl

Download URL tinyprogress-1.2.0-py3-none-any.whl
Size 16.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3d45c6682385be5157f90d7e8f7d8fc6c467b6bd2103ff23a934ce5d49bbf1a8
BLAKE2b-256 checksum
How to use checksums
06c741d45507af451b797ae952f757c38e837d9764644c54b503f5e1fc467e33
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 release files

1.1.0

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page