skillfed

fastprogress

A nested progress with plotting options for fastai

fastprogress v1.1.6 1.6M downloads/30d#3,716 on PyPI1,098
Permissive license Apache-2.0 Active released

What it is and what it does

fastprogress wraps iterators to display real-time progress bars in Jupyter notebooks and console environments. It supports nested progress tracking (parent and child bars), live comments on each bar, and optional matplotlib-based graph plotting that updates as your loop runs. The package is commonly used in machine learning training loops to visualize epoch progress, loss curves, and validation metrics simultaneously.

The library depends on fastcore and python-fasthtml for its core functionality. It targets Python 3.10+ and is designed to be lightweight and easy to integrate into existing loops with minimal code changes. Output can be written to files when the script is redirected, preserving only the `.write()` method output.

Use it for:

  • Track multi-level training loops with separate progress bars for epochs and batches while plotting loss curves live.
  • Monitor long-running data processing pipelines in Jupyter notebooks with nested progress and status comments.
  • Display console progress for batch jobs with optional graph visualization of metrics over time.
  • Provide real-time feedback during hyperparameter sweeps or grid searches with nested iteration tracking.
  • Log training progress to files while showing interactive progress in Jupyter during development.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Displays nested progress bars with optional live plotting for Jupyter notebooks and console output, useful for tracking multi-level loops and training workflows.

Yes. Active maintenance, no known vulnerabilities, permissive license, and low install friction make it a safe choice. Install if you need nested progress tracking with optional live plotting in Jupyter or console environments, especially for training loops or multi-level iterations.

Install

fastprogress on PyPI

pip

pip install fastprogress

uv

uv add fastprogress

poetry

poetry add fastprogress

Installing fastprogress

Before you install

Low friction: pure Python wheel with only two runtime dependencies (fastcore and python-fasthtml). Active maintenance with recent releases; last commit 2026-08-06.

License in practice

Apache-2.0 permissive license allows use in commercial and private projects with minimal restrictions.

Quickstart

pip install fastprogress

from fastprogress.fastprogress import master_bar
from time import sleep

for i in (mb := master_bar(range(10))):
    for j in mb.progress(range(100)):
        sleep(0.01)
    mb.write(f'Finished loop {i}.')

Requires Python 3.10 or later.

Verify before relying

  • Whether plotting features work outside Jupyter (e.g., in headless environments or pure console).
  • Performance characteristics with very large iteration counts or frequent graph updates.

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 2 — fastcore, python-fasthtml
Maintenance actively maintained — 96 days since the last release
Last repo commit
First released
Downloads 1,615,692/month — #3,716 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: fastprogress-1.1.6-py3-none-any.whl

Keywords: jupyter, notebook, progressbar

Development Status :: 4 - BetaIntended Audience :: DevelopersNatural Language :: EnglishProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: Only

Tags

progress bar jupyter notebooknested progress trackingtraining loop visualizationconsole progress displaylive plot during iteration
jupyter-integrationtraining-visualization

More Monitoring packages