Ad

Indicators: C++ Activity Indicators

Indicators is a lightweight, header-only C++ library providing progress bars and spinners for displaying task progress. It offers various bar styles, including standard, indeterminate, block, and multi-progress, along with time display and customizable options.
Screenshot of p-ranav/indicators homepage

Indicators is a C++ library for creating visual progress indicators. It provides a set of classes to display progress in the terminal, supporting various progress bar styles like standard, indeterminate, block, and multi-progress. The library is header-only, making it easy to integrate into any project. It aims to provide a simple and effective way to communicate the status of long-running tasks.

Supports thread-safe progress bars and spinners, making it suitable for multi-threaded applications. It is header-only, simplifying integration. Provides both a standard and a single-header version for flexibility. Offers clear and customizable options for display. Supports time elapsed and remaining, inspired by tqdm.

  • Multi-Progress Support: Manage multiple progress bars simultaneously for complex tasks.
  • Indeterminate Progress: Displays a spinning indicator for tasks with unknown total progress.
  • Block Progress Bars: Implements block-style bars for a distinct visual appearance.
  • Time Display: Shows both elapsed and estimated remaining time for enhanced feedback.
  • Customizable Options: Supports various options for bar style, colors, prefixes, and postfixes.

The project is actively maintained with recent commits and a clear issue tracking system. The documentation is comprehensive, offering detailed examples and explanations for each feature. The presence of a demo GIF on the GitHub page suggests a well-tested and visually appealing implementation.

Developers working on command-line applications, scripts, or any C++ project requiring visual feedback on task progress can benefit from Indicators. It helps enhance user experience by providing clear indicators of ongoing operations, especially for long-running processes or asynchronous tasks. It offers a convenient and well-designed alternative to manual progress reporting or complex GUI solutions.

Summarize:
Share:
Stars
3,409
Forks
270
Issues
49
Created
6 years ago
Commit
1 year ago
License
MIT
Archived
No
Updated 24 days ago

Similar Repositories