awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
cheggaaa avatar

cheggaaa/pb

0
View on GitHub↗
3,721 stars·271 forks·Go·BSD-3-Clause·11 views

Pb

pb is a Go progress bar library and terminal UI component used to track and display the completion status of long-running tasks. It functions as an IO progress tracker by wrapping reader and writer operations to automatically update visual indicators as data flows through a system.

The library provides capabilities for rendering progress bars, completion percentages, and processing speeds within a console interface. It includes a system for customizing the visual layout, metadata templates, and color schemes of these status indicators.

The project covers IO stream monitoring and terminal-based UI design to provide real-time feedback during command line tool execution.

Features

  • Terminal Progress Indicators - Renders dynamic, overwritable terminal updates showing completion percentage and processing speed for long-running tasks.
  • Console UI - Provides tools for building and customizing visual status indicators and layouts within a console interface.
  • IO Progress Tracking - Automatically detects and displays byte volumes processed during streaming IO to update progress bars.
  • IO Progress Wrappers - Acts as a wrapper for reader and writer operations that automatically drives progress bar updates.
  • IO Stream Wrappers - Provides wrappers that intercept IO read and write operations to track byte throughput in real time.
  • Terminal Progress Bar Animations - Renders animated progress bars in the terminal to provide visual feedback for long-running tasks.
  • Progress Rendering Libraries - Provides a comprehensive library for rendering visual progress bars and processing speeds in Go applications.
  • Visual Feedback Components - Enables Go-based command line tools to provide visual feedback on long-running process status.
  • ANSI Escape Sequence Formatting - Implements terminal escape sequences to refresh specific console lines and prevent screen flickering.
  • Progress Bar Appearance Customizers - Allows customization of progress bar colors, spinners, and layout to match application styling.
  • State Redraw Loops - Uses a state-driven redraw loop to periodically update terminal display based on real-time processing metrics.
  • Terminal - Provides a template system for customizing the visual arrangement and metadata of progress indicators.
  • Terminal UI Components - Implements a reusable terminal UI component to track and display the completion status of tasks.
  • Command Line Tools - Console progress bar library.

Star history

Star history chart for cheggaaa/pbStar history chart for cheggaaa/pb

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Pb

Similar open-source projects, ranked by how many features they share with Pb.
  • schollz/progressbarschollz avatar

    schollz/progressbar

    4,678View on GitHub↗

    This project is a thread-safe terminal progress bar and IO progress wrapper for Go applications. It provides a library for rendering updating progress indicators and activity spinners within a command-line interface to visualize task completion and data stream progress. The library includes a stream-wrapping IO interceptor that automatically tracks and displays the volume of bytes processed during read or write operations. It also supports indeterminate activity spinners for processes where the total work volume is unknown. Users can configure the visual appearance of the progress indicators

    Gocommand-linegogolang
    View on GitHub↗4,678
  • rsalmei/alive-progressrsalmei avatar

    rsalmei/alive-progress

    6,245View on GitHub↗
    Pythonaliveanimatedanimations
    View on GitHub↗6,245
  • pterm/ptermpterm avatar

    pterm/pterm

    5,470View on GitHub↗

    pterm is a Go terminal UI library used to build rich command-line interfaces. It provides toolsets for terminal data visualization, operation progress tracking, interactive user input, and structured logging. The library distinguishes itself through a comprehensive set of visual tools, including a framework for interactive terminal prompts such as selection menus and confirmation dialogs, and a specialized system for rendering bar charts, heatmaps, and tree structures. It also includes a structured terminal logger capable of producing leveled, colorful system messages. The project covers bro

    Goanimationansi-colorsbeautify
    View on GitHub↗5,470
  • console-rs/indicatifconsole-rs avatar

    console-rs/indicatif

    5,168View on GitHub↗

    indicatif is a Rust library for rendering progress bars and loading spinners in command line applications. It provides terminal progress indicators that track task completion percentages and estimated time remaining. The project includes a multi-bar progress manager to coordinate several simultaneous indicators in a single terminal view and a terminal log synchronizer to prevent logging output from overlapping or distorting active bars. It features a spinner component for signaling active background processes when the total completion percentage is unknown. The library supports progress temp

    Rust
    View on GitHub↗5,168
See all 30 alternatives to Pb→

Frequently asked questions

What does cheggaaa/pb do?

pb is a Go progress bar library and terminal UI component used to track and display the completion status of long-running tasks. It functions as an IO progress tracker by wrapping reader and writer operations to automatically update visual indicators as data flows through a system.

What are the main features of cheggaaa/pb?

The main features of cheggaaa/pb are: Terminal Progress Indicators, Console UI, IO Progress Tracking, IO Progress Wrappers, IO Stream Wrappers, Terminal Progress Bar Animations, Progress Rendering Libraries, Visual Feedback Components.

What are some open-source alternatives to cheggaaa/pb?

Open-source alternatives to cheggaaa/pb include: schollz/progressbar — This project is a thread-safe terminal progress bar and IO progress wrapper for Go applications. It provides a library… rsalmei/alive-progress. pterm/pterm — pterm is a Go terminal UI library used to build rich command-line interfaces. It provides toolsets for terminal data… console-rs/indicatif — indicatif is a Rust library for rendering progress bars and loading spinners in command line applications. It provides… sindresorhus/ora — Ora is a terminal spinner library and Node.js CLI component used to integrate animated loading indicators and… jroimartin/gocui — gocui is a console user interface library for the Go programming language. It provides a toolkit for building…