Skip to main content

A progress bar that works everywhere — terminal, Jupyter, VS Code, Colab, Marimo.

Project description

everbar

A progress bar that works everywhere — terminal, Jupyter, JupyterLab, VS Code notebooks, Google Colab, Marimo, Pyodide, and CI logs. One API, the right backend per environment.

Status: 0.2.0 — alpha. API may shift.

Install

pip install everbar             # core only; uses text fallback if nothing else is installed
pip install "everbar[tqdm]"     # terminal + Jupyter via tqdm
pip install "everbar[all]"      # everything (tqdm, rich, ipywidgets, marimo)

Use

from everbar import Progress

for x in Progress(items, desc="Loading"):
    work(x)

with Progress(total=100, desc="Steps") as bar:
    for _ in range(100):
        do_step()
        bar.update(1)

Live metrics with set_postfix

Show a live key/value suffix next to the bar — useful in training loops:

with Progress(total=epochs, desc="Training") as bar:
    for epoch in range(epochs):
        loss, acc = train_one_epoch()
        bar.set_postfix(loss=loss, acc=acc)
        bar.update(1)

Calling set_postfix again replaces the previous suffix. Floats are formatted compactly (e.g. loss=0.424, acc=0.91).

Overrides

Progress(items, backend="terminal")        # per-call
EVERBAR_BACKEND=terminal python script.py  # env var
import everbar
everbar.set_default_backend("terminal")    # module-wide

How it picks a backend

everbar.detect_environment() returns one of: marimo, colab, kaggle, vscode_notebook, jupyter, jupyter_qt, spyder, databricks, pyodide, ipython_terminal, terminal, non_tty. Each maps to a backend, with graceful fallback to a log-line text mode when nothing better is available.

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

everbar-0.2.0.tar.gz (10.8 kB view details)

Uploaded Source

Built Distribution

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

everbar-0.2.0-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

Details for the file everbar-0.2.0.tar.gz.

File metadata

  • Download URL: everbar-0.2.0.tar.gz
  • Upload date:
  • Size: 10.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for everbar-0.2.0.tar.gz
Algorithm Hash digest
SHA256 ed1a5474069d7f0f214c7607cce825585d270e3244e9b12eda9e9850fef4bbef
MD5 1778d8b57e0b17d0d90db72df34db79d
BLAKE2b-256 c9f14d38db3922fea2dbeb6f4f9a0da831635e9360e70e60f37d2947017cc950

See more details on using hashes here.

File details

Details for the file everbar-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: everbar-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 7.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for everbar-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 209e7c80790baa717926664993a85655238b6a9545b970cf01c5bf1e386a06c8
MD5 73c913fdc603a1576e827bca1bd3bc15
BLAKE2b-256 9bdcbb0beab79f28f6d0c505c56eaca790a685e58eeefe1cd834c77e799be3d8

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