# tqdm/tqdm

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/tqdm-tqdm).**

30,970 stars · 1,438 forks · Python · other

## Links

- GitHub: https://github.com/tqdm/tqdm
- Homepage: https://tqdm.github.io
- awesome-repositories: https://awesome-repositories.com/repository/tqdm-tqdm.md

## Topics

`cli` `closember` `console` `discord` `gui` `jupyter` `keras` `meter` `pandas` `parallel` `progress` `progress-bar` `progressbar` `progressmeter` `python` `rate` `telegram` `terminal` `time` `utilities`

## Description

Tqdm is a terminal-based progress indicator that provides real-time visual feedback for long-running tasks and data processing pipelines. It functions as an iteration tracking wrapper, allowing developers to monitor the completion status of loops and data streams by wrapping standard iterables without modifying the underlying data source.

The project distinguishes itself through its use of terminal escape sequences to render dynamic text and graphical bars that update in place. It supports both automatic tracking of iterable collections and manual progress incrementing for non-linear tasks where the total workload is not known upfront. By calculating real-time throughput and elapsed time, it provides diagnostic information such as estimated completion times and processing rates.

The library includes capabilities for managing the lifecycle of progress indicators through context managers and supports descriptive labeling to clarify active operations. It adapts to various input types by detecting length attributes or iterators and offers asynchronous hooks for custom logic execution during the iteration process.

## Tags

### Development Tools & Productivity

- [Progress Indicators](https://awesome-repositories.com/f/development-tools-productivity/progress-indicators.md) — Displays real-time completion status for long-running tasks directly within a terminal interface.
- [Iteration Wrappers](https://awesome-repositories.com/f/development-tools-productivity/iteration-wrappers.md) — Wraps around loops or data streams to automatically calculate and display remaining work progress.
- [Iterable Trackers](https://awesome-repositories.com/f/development-tools-productivity/iterable-trackers.md) — Wraps collections of items with visual indicators that automatically update as each item is processed. ([source](https://tqdm.github.io/docs/tqdm/))
- [Iterable Decorators](https://awesome-repositories.com/f/development-tools-productivity/iterable-decorators.md) — Wraps standard iterables to intercept iteration events and trigger progress updates.
- [CLI User Experience Tools](https://awesome-repositories.com/f/development-tools-productivity/cli-user-experience-tools.md) — Enhances terminal applications with interactive visual elements for status updates.
- [Task Monitors](https://awesome-repositories.com/f/development-tools-productivity/task-monitors.md) — Provides visual feedback for time-consuming operations to track completion status.
- [Manual Progress Incremeters](https://awesome-repositories.com/f/development-tools-productivity/manual-progress-incremeters.md) — Enables manual advancement of progress indicators for tasks that do not follow standard sequences. ([source](https://tqdm.github.io/docs/tqdm/))
- [Manual Progress Trackers](https://awesome-repositories.com/f/development-tools-productivity/manual-progress-trackers.md) — Manages completion indicators for tasks where the total workload is not known upfront.
- [Terminal Renderers](https://awesome-repositories.com/f/development-tools-productivity/terminal-renderers.md) — Updates visual progress bars by sending control codes to overwrite the current console line.
- [Execution Monitors](https://awesome-repositories.com/f/development-tools-productivity/execution-monitors.md) — Tracks duration and completion rate of background processes to provide estimated finish times.
- [Pipeline Monitors](https://awesome-repositories.com/f/development-tools-productivity/pipeline-monitors.md) — Tracks throughput and completion percentage of large-scale data transformations.
- [Throughput Calculators](https://awesome-repositories.com/f/development-tools-productivity/throughput-calculators.md) — Computes real-time processing rates to estimate remaining completion time.

### User Interface & Experience

- [Terminal UI Components](https://awesome-repositories.com/f/user-interface-experience/terminal-ui-components.md) — Renders dynamic text and graphical bars to provide feedback during console-based operations.
