Skip to main content

A lightweight alternative to TQDM. Part of the vibe suite.

Project description

Vibe Loader

Vibe Demo

Vibe Loader is a lightweight alternative to TQDM, written in less than 250 lines of code. It uses an event-based function called update to refresh values dynamically.

Features

  • 100+ Styles: Passed directly into the Loading object.
  • Zero Dependencies: No foreign packages required.
  • MARGIN Support: Optimized for small terminals to prevent layout breaking.
  • Dynamic Resizing: Automatically adjusts to terminal width.
  • Stream Support: Compatible with request streams.
  • Context Manager: Supports with statements for easy lifecycle management.
  • Developer Friendly: All variables are public and changeable, plus support for custom styles.

Performance

The new MinLoad class is faster than tqdm in most tasks.

Candidate Time (s) IT/s Overhead
Baseline 0.0022 45,207,098 +0.0%
tqdm 0.0474 2,109,886 +2,042.6%
MinLoad 0.0377 2,651,187 +1,605.2%

Links

Check out the repository here: vibe-loadbar on GitHub

Example Usage for Loading:

from vibe_load import Loading, SmoothStyle
import time

for i in Loading(range(100), style=SmoothStyle()):
    time.sleep(0.1)

with Loading(range(100), style=SmoothStyle()) as pbar:
    for i in pbar:
        time.sleep(0.1)
    
#These loops should take ~10 seconds

Example Usage for MinLoad:

from vibe_load import MinLoad
import time

for i in MinLoad(range(100)):
    time.sleep(0.01)

with MinLoad(range(100)) as pbar:
    for i in pbar:
        time.sleep(0.1)

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

vibe_loadbar-0.3.5.tar.gz (8.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vibe_loadbar-0.3.5-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file vibe_loadbar-0.3.5.tar.gz.

File metadata

  • Download URL: vibe_loadbar-0.3.5.tar.gz
  • Upload date:
  • Size: 8.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for vibe_loadbar-0.3.5.tar.gz
Algorithm Hash digest
SHA256 45b32e05f65364f6db769ced1fd879fb4e87734a4a889780d1f66fde9aba10dd
MD5 fab6df7b984d0019bfe67747468fbb36
BLAKE2b-256 cfb24f70f0c6d997e66115dfccf85b76133583c8bace3a45e75e3ed394c94516

See more details on using hashes here.

File details

Details for the file vibe_loadbar-0.3.5-py3-none-any.whl.

File metadata

  • Download URL: vibe_loadbar-0.3.5-py3-none-any.whl
  • Upload date:
  • Size: 8.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for vibe_loadbar-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 8433a79d57d9c9b6553d95591aa4d95b13947dc20e4eb0e2454fa152774fca9c
MD5 8f2dc722dd130da6a875f4998287bebd
BLAKE2b-256 265e8d1ba5950425f79bdd1b2e459e86b917f64418bbaa8120bdedd3559c8bb4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page