pb is a console progress bar library for Go.
The library solves the problem of displaying progress feedback in terminal applications. It provides a straightforward way to render progress bars in the console, allowing developers to show users the status of long-running operations. The tool uses Go's built-in text/template package for rendering, enabling both predefined progress bar styles and custom templates tailored to specific needs.
Developers should choose this library when building command-line tools that perform operations where users benefit from visual progress feedback. It is particularly suited for IO operations and batch processing tasks. The library supports customizable templates, allowing developers to define the appearance of progress bars using template syntax and compose them from available elements like fill characters, borders, and status indicators. Unicode progress bar glyphs can be enabled via environment variable for terminals with appropriate font support.
The project maintains active development with regular updates and bug fixes. The codebase shows consistent attention to both core functionality and user-facing improvements. Documentation is kept current alongside the code, with separate guidance provided for different major versions to help users understand migration paths and version-specific features.