p-ranav/indicators
Activity Indicators for Modern C++
Thành tựu nổi bật
Những danh hiệu mới nhất của dự án
#1 Repository Của Tháng
#1 Repository Của Tháng
#1 Repository Của Tháng
⚡ Thư viện C++ header-only cho progress bar, spinner và activity indicator cực kỳ linh hoạt
Header-only, thread-safe, tùy biến không giới hạn — tất cả cho CLI tools của bạn.
indicators của p-ranav là một thư viện C++ nhỏ gọn, chỉ cần copy thư mục include/indicators (hoặc dùng bản single-header trong single_include/indicators) là dùng được ngay. Nó cung cấp các thành phần activity indicator như progress bar, spinner, multi-progress, dynamic progress... để hiển thị tiến trình xử lý trong ứng dụng console, với khả năng tùy biến màu sắc, font style, định dạng bar và hỗ trợ Unicode.
✨ Điểm nổi bật
- Thread-safe: Progress bar và spinner hoạt động an toàn trong môi trường đa luồng.
- Header-only: Chỉ cần include, không cần build, không dependency ngoài.
- Nhiều loại indicator: Basic Progress Bar, Indeterminate, Block, Multi Progress, Dynamic Progress, Progress Spinner.
- Hiển thị thời gian: Hiện elapsed/remaining time theo phong cách tqdm của Python.
- Cập nhật linh hoạt: Dùng
bar.tick()để tăng 1% hoặcbar.set_progress(value)để set mức chính xác. - Tùy biến cao: Thay đổi độ rộng, ký tự fill/lead/remainder, prefix/postfix text, màu sắc, font style (bold, italic...).
- Unicode support: Dùng được ký tự Unicode như █, ■, emoji trong bar.
- MIT License: Tự do sử dụng trong dự án cá nhân và thương mại.
💡 Vì sao đáng chú ý
Điểm mạnh của thư viện là sự đơn giản và tính linh hoạt. Chỉ với vài dòng code, bạn đã có một progress bar chuyên nghiệp với thời gian còn lại, màu sắc và font style — thứ mà nếu tự viết sẽ tốn khá nhiều thời gian. Việc thread-safe cũng là một điểm cộng lớn khi bạn cần hiển thị tiến trình từ nhiều luồng xử lý song song.
Thư viện phù hợp với các công cụ CLI, script xử lý dữ liệu, training model, download file hay bất kỳ tác vụ dài nào cần phản hồi trực quan cho người dùng. Đặc biệt hữu ích khi bạn muốn có giao diện console đẹp mắt mà không phải phụ thuộc vào các thư viện nặng nề.
#C++ #ProgressBar #HeaderOnly #Library #TiniX
Dự án tương tự
Khám phá các dự án và mô hình AI khác có sự tương đồng.
A collection of lightweight SwiftUI loading animations.
Native loading and progress indicators for React Native. 50 built-ins and 50 progress designs, powered by LoaderKit, with the same motion on Android and iOS.
Animated dot-matrix loading indicators for SwiftUI — 100+ deterministic dot loaders, zero assets, zero dependencies. A faithful Swift port of zzzzshawn/matrix.
React adaptation of the SVG Loaders library by Sam Herbert