30 open-source projects similar to cheggaaa/pb, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Cheggaaa Pb alternative.
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
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
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
Ora is a terminal spinner library and Node.js CLI component used to integrate animated loading indicators and task-outcome symbols into JavaScript-based terminal applications. It functions as a progress visualizer that signals the status of command-line operations through animated sequences of characters. The library provides promise-based spinner wrapping, allowing animations to start and resolve automatically based on the outcome of asynchronous tasks. It replaces active animations with specific success, failure, warning, or info symbols to communicate the final result of a process. The to
gocui is a console user interface library for the Go programming language. It provides a toolkit for building interactive terminal applications using a layout engine that organizes overlapping rectangular views and coordinates. The library features a terminal input handler to capture and map keyboard shortcuts and mouse events to specific application actions. It includes an ANSI escape sequence parser to manage text attributes, colors, and cursor positioning. The framework covers interface view management and overlapping window layering, allowing for a structured arrangement of content. Rend
Termui is a Go terminal user interface library used for building interactive dashboards and visual layouts within a command-line environment. It functions as a TUI layout engine, an interactive CLI framework, and a terminal data visualization toolkit. The library provides a set of specialized widgets for rendering charts, plots, gauges, and tables using character-based graphics. It includes a grid-based system for arranging interface elements using relative coordinates and proportional sizing to create structured displays. The toolkit covers a broad range of capabilities including data visua
Terminal based dashboard.
Go package to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies.
multi progress bar for Go cli applications
🎨 Terminal color rendering library, support 8/16 colors, 256 colors, RGB color rendering output, support Print/Sprintf methods, compatible with Windows. GO CLI 控制台颜色渲染工具库,支持16色,256色,RGB色彩渲染输出,使用类似于 Print/Sprintf,兼容并支持 Windows 环境的色彩渲染
tcell is a Go terminal user interface library and framework for building cell-based applications. It functions as a terminal emulator backend and input processor, utilizing a change-based diffing engine to manage screen state and efficiently render updates. The project is distinguished by its pluggable backend abstraction, which allows terminal interfaces to be rendered across physical terminals or compiled into WebAssembly for web browser display. It provides a virtual screen simulation to enable programmatic event injection and output inspection for automated application testing. Its capab
Bashtop is a terminal-based system monitor and resource dashboard for Unix systems, including Linux, macOS, and FreeBSD. It provides a text-user interface for tracking real-time hardware performance and managing system processes. The tool functions as a hardware dashboard that visualizes processor, memory, disk, and network usage. It includes process management capabilities that allow users to filter, sort, and terminate active system tasks directly from the command line. Users can customize the visual appearance and behavior of the monitor through integrated menus or local configuration fil
Halo is a Python library for rendering animated loading indicators and task completion symbols within terminal and notebook environments. It serves as a utility for providing visual feedback in command-line interfaces to signal that background processes are active. The library allows for the customization of loading spinner animations through the use of preset styles or custom character sequences and rotation intervals. It includes functionality to terminate active animations and replace them with specific status symbols and messages to indicate success, failure, or warnings. The project cov
Terminal-kit is a Node.js toolkit for building command-line applications and console user interfaces. It provides a comprehensive suite of utilities for console text styling, terminal graphics rendering, input parsing, and interactive interface construction. The library features a cell-based text grid model, a component document tree for hierarchical layout of interactive widgets, and off-screen pixel buffering for multi-layered image composition and manipulation. It handles direct escape-sequence output control and raw-mode input parsing to manage display regions and capture user interaction
Boltons is a comprehensive utility toolkit and extension of the Python standard library. It provides a collection of reusable recipes and specialized data structures, system utilities, and helper libraries designed to support common programming tasks across various domains. The project is distinguished by a standard-library-only dependency model, ensuring maximum portability with zero external dependencies. It provides advanced implementations for data structures, such as immutable mappings and priority queues, alongside recursive data transformation tools for reshaping complex nested diction
Progress is a Linux system utility designed to monitor the real-time data transfer progress of active system commands. It functions as a process monitor that reads the proc filesystem to calculate the throughput and estimated completion time of data-intensive tasks. The tool specifically tracks the progress of running Linux commands such as copy, move, and disk duplicate operations. It provides visual status indicators, including completion percentages and current transfer speeds, for standard utilities that do not include their own progress bars. The utility's observability capabilities cov
This project is a framework for building interactive, graphical-style terminal applications. It provides a declarative component model that organizes user interfaces into a tree of nested widgets, each managing its own lifecycle, state, and rendering. By subclassing the base application class, developers can construct complex, keyboard-navigable interfaces that run directly within terminal emulators. The framework distinguishes itself through a reactive architecture and a CSS-based layout engine. It uses a reactive attribute system to automatically track state changes and trigger targeted int
Skim is a cross-platform interactive fuzzy finder that runs as a terminal application, a Rust library, a Vim and Neovim plugin, and a shell integration tool. It provides real-time filtering and selection from lists of items, supporting keyboard and mouse navigation, live preview panes, and multi-select functionality across Linux, macOS, and Windows. The tool distinguishes itself through a composable query expression tree that supports fuzzy, exact, inverse, prefix, suffix, and logical AND/OR operators, combined with a Smith-Waterman scoring engine that penalizes typos and gaps for natural rel
Crossterm is a cross-platform Rust library for terminal manipulation, providing a low-level interface for controlling terminal state, cursor movement, and text styling. It acts as a cross-platform TTY interface that handles raw mode, alternate screen buffers, and terminal window metadata across different operating systems. The library includes an ANSI text styling engine for applying RGB colors and text attributes to console output, as well as a terminal input event handler for capturing keyboard presses, mouse movements, and terminal resize events in real time. It also provides system clipbo
Notcurses is a terminal graphics engine and TUI library that renders high-fidelity images, video, and rich Unicode graphics directly in terminal emulators. At its core, it provides a layered framebuffer system that composes overlapping planes with independent depth and opacity, enabling complex visual scenes. The library also includes a terminal input processor for capturing and decoding keyboard and mouse events, a data visualization toolkit for histograms and line plots, a multimedia terminal player for images and video, and a TUI widget framework with reusable interface components. The lib
A go library to improve readability in terminal apps using tabular data
Golang ultimate ANSI-colors that supports Printf/Sprintf methods