alive-progress
A new kind of Progress Bar, with real-time throughput, ETA, and very cool animations!
What it is and what it does
alive-progress is a terminal progress bar library that shows real-time throughput, estimated time to completion, and animated visual feedback for long-running tasks. It updates efficiently at a throttled rate to keep CPU usage low during high-iteration workloads, and automatically enriches print and logging statements with the current bar position. The library includes a unique pause mechanism that lets you suspend processing, return to the Python prompt to inspect or fix items, and then resume from exactly where you left off.
The package is built on two runtime dependencies: about-time for elapsed time tracking and graphemeu for proper Unicode grapheme handling in terminal output. It supports modern Python versions from 3.9 through 3.14 and is actively maintained. The bar is highly customizable with multiple built-in spinner and bar styles, and includes factories to create custom animations. It also detects under- and overflow conditions, allowing you to track counts beyond actual iterations.
Use it for:
- Monitor long-running data processing pipelines with accurate ETA and throughput feedback
- Pause a batch job mid-run to manually inspect or fix problematic items, then resume without reprocessing
- Display progress for remote SSH tasks where you need confirmation the process is still running
- Enrich application logs with progress position automatically during multithreaded operations
- Resume interrupted computations by skipping already-processed items while maintaining accurate ETA
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Displays an animated progress bar in the terminal with real-time throughput, ETA calculation, and the ability to pause and resume long-running tasks without losing state.
Yes. The package is stable, actively maintained, has no known vulnerabilities, and solves a real problem—showing progress with pause/resume capability that no other Python progress bar offers. Low install friction and permissive licensing make it a straightforward add to any project needing terminal progress feedback.
Install
alive-progress on PyPI
pip
pip install alive-progressuv
uv add alive-progresspoetry
poetry add alive-progressInstalling alive-progress
Before you install
Low friction install with only two runtime dependencies (about-time and graphemeu). Active maintenance with recent commits and a stable production release; supports current Python versions from 3.9 through 3.14.
License in practice
MIT license is permissive, allowing free use, modification, and distribution in both open-source and commercial projects with minimal restrictions.
Quickstart
pip install alive-progress
from alive_progress import alive_bar
with alive_bar(total_items) as bar:
for item in items:
# process item
bar()
Requires Python 3.9 or later.
Verify before relying
- Whether the pause/resume feature works correctly across all terminal emulators and SSH sessions as claimed
- Performance impact of the multithreaded print/logging hooks under high concurrency
- Compatibility with non-POSIX terminals (Windows CMD, PowerShell native support)
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (<4,>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — about-time, graphemeu |
| Maintenance | actively maintained — 390 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 3,826,695/month — #2,487 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: alive_progress-3.3.0-py3-none-any.whl
Keywords: progress, bar, progress-bar, progressbar, spinner, eta, monitoring, python, terminal, multithreaded, REPL, alive, animated, visual, feedback, simple, live, efficient, monitor, stats, elapsed, time, throughput
Tags
More Monitoring packages
Wraps any iterable to display a real-time…
copyleft · top 100 on PyPI
opentelemetry-semantic-conventionsProvides generated Python code for…
permissive · top 100 on PyPI
opentelemetry-sdkProvides the reference implementation of the…
permissive · top 100 on PyPI
opentelemetry-apiProvides the abstract API and interfaces for…
permissive · top 100 on PyPI
opentelemetry-exporter-otlp-proto-httpExports OpenTelemetry observability data to an…
permissive · top 1,000 on PyPI
opentelemetry-instrumentationProvides automatic instrumentation commands and…
permissive · top 1,000 on PyPI
progressProvides terminal progress bars and spinners…
permissive · top 5,000 on PyPI
progressbar2progressbar2 renders text-based progress bars…
permissive · top 5,000 on PyPI
enlightenEnlighten is a console progress bar library…
copyleft · top 5,000 on PyPI
click-spinnerDisplays a simple animated spinner in the…
permissive · top 5,000 on PyPI
progressbar33Displays text-based progress bars in the…
unclear · top 15,000 on PyPI
about-timeMeasures execution time and throughput of code…
permissive · top 5,000 on PyPI
haloHalo displays animated spinners in the terminal…
permissive · top 5,000 on PyPI
yaspinYaspin displays an animated terminal spinner to…
permissive · top 5,000 on PyPI
spinnersProvides an enum of more than 60 pre-defined…
permissive · top 5,000 on PyPI
pySmartDLpySmartDL is a download manager that…
permissive · top 15,000 on PyPI