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
Back to willmcgugan/rich

Projects sharing features with Rich

30 open-source projects similar to willmcgugan/rich, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.

  • charmbracelet/gumcharmbracelet avatar

    charmbracelet/gum

    22,814View on GitHub↗

    Gum is a toolkit for building interactive, visually styled command-line interfaces and prompts directly within shell scripts. It functions as a library of modular components that allow developers to enhance terminal workflows by adding structured layouts, formatted text, and user-input widgets to standard command-line operations. The project distinguishes itself by providing a suite of specialized utilities for common shell tasks, such as fuzzy-matched selection menus, interactive file system navigation, and confirmation dialogs. It translates high-level styling and layout instructions into t

    Gobashshell
    View on GitHub↗22,814
  • arthursonzogni/ftxuiArthurSonzogni avatar

    ArthurSonzogni/FTXUI

    9,686View on GitHub↗

    FTXUI is a C++ terminal user interface library and cross-platform console framework used for building interactive command line applications. It functions as a declarative terminal layout engine and a component-based UI toolkit that enables the creation of responsive interfaces. The library is distinguished by its terminal graphics and animation capabilities, allowing for the rendering of custom shapes, data plots, and smooth visual transitions using easing functions. It provides a comprehensive set of interactive widgets and a layout system utilizing flexbox and grid containers that adapt to

    C++arthursonzogniasciiascii-art
    View on GitHub↗9,686
  • charmbracelet/lipglosscharmbracelet avatar

    charmbracelet/lipgloss

    10,591View on GitHub↗

    This project is a framework for composing terminal interfaces through declarative styling and a grid-based layout engine. It provides a comprehensive toolkit for building responsive command-line applications by managing ANSI escape sequences, color profiles, and text rendering to ensure consistent visual output across different terminal environments. The library distinguishes itself through its ability to automatically detect terminal capabilities and background themes, allowing it to adjust color schemes and downsample profiles for optimal readability. It utilizes a layered composition model

    Gocligogolang
    View on GitHub↗10,591

AI search

Explore more awesome repositories

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

Find more with AI search
  • gizak/termuigizak avatar

    gizak/termui

    13,574View on GitHub↗

    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

    Go
    View on GitHub↗13,574
  • anomalyco/opentuianomalyco avatar

    anomalyco/opentui

    12,131View on GitHub↗

    Opentui is a terminal user interface framework for building interactive command line applications. It provides a component-based system featuring a flexbox layout engine, a virtual node component tree, and a low-level 2D cell array renderer. The project is distinguished by a sophisticated keyboard binding engine that maps complex multi-stroke sequences and chords to named commands using prioritized, reactive layers. It also implements a plugin architecture that allows external modules to inject custom UI components into designated layout slots and extend input logic at runtime. Its capabilit

    TypeScript
    View on GitHub↗12,131
  • gyscos/cursivegyscos avatar

    gyscos/Cursive

    4,810View on GitHub↗

    Cursive is a cross-platform terminal user interface toolkit and framework for building interactive applications in Rust. It provides a modular system for creating text-based graphical interfaces, utilizing a dedicated engine to manage the main display loop and view hierarchies. The toolkit features a backend-agnostic abstraction layer to ensure consistent rendering and input handling across different operating systems. It distinguishes itself through a palette-based theme engine that supports runtime theme loading and true color rendering, as well as the ability to generate user interface hie

    Rust
    View on GitHub↗4,810
  • spectresystems/spectre.consolespectresystems avatar

    spectresystems/spectre.console

    11,507View on GitHub↗

    spectre.console is a .NET console UI library and command-line interface framework used to build rich user interfaces for console applications. It functions as a console text markup processor and terminal layout engine to provide advanced text styling and structured data organization. The library enables the creation of visually organized interfaces using a system of tables, grids, and panels. It utilizes a dedicated markup language to apply colors and styles to terminal output, allowing for the rendering of formatted text and complex visual structures.

    C#
    View on GitHub↗11,507
  • chjj/blessedchjj avatar

    chjj/blessed

    11,854View on GitHub↗

    This project is a terminal user interface library for Node.js, designed to facilitate the construction of interactive command-line applications. It provides a comprehensive toolkit of high-level widgets that abstract complex terminal escape codes and rendering logic, allowing developers to build functional interfaces using reusable components. The framework distinguishes itself by implementing a box-model-based layout engine and a virtual DOM-style reconciliation system. These mechanisms enable responsive design patterns—such as percentage-based sizing and relative positioning—to function wit

    JavaScript
    View on GitHub↗11,854
  • vadimdemedes/inkvadimdemedes avatar

    vadimdemedes/ink

    38,933View on GitHub↗

    Ink is a declarative framework for building interactive command-line applications using a component-based architecture. It functions as a console renderer that maps component trees to terminal output buffers, allowing developers to manage stateful interfaces through standard component reconciliation. By translating high-level layout and style properties into terminal control codes, it enables the creation of responsive, dynamic interfaces within the console. The framework distinguishes itself by integrating a cross-platform layout engine that applies a flexible box model to the character-base

    TypeScriptclicommand-lineflexbox
    View on GitHub↗38,933
  • prompt-toolkit/python-prompt-toolkitprompt-toolkit avatar

    prompt-toolkit/python-prompt-toolkit

    10,498View on GitHub↗

    This project is a Python terminal user interface library and toolkit designed for building interactive command-line applications. It provides a terminal input manager and a widget toolkit for rendering dashboards, menus, and editors within a terminal emulator. The library enables the creation of full-screen terminal interfaces and interactive shells. It distinguishes itself with advanced input handling, including lexer-based syntax highlighting for visual feedback on code structure and support for industry-standard keyboard navigation modes such as Emacs and Vi. The capability surface covers

    Python
    View on GitHub↗10,498
  • fdehau/tui-rsfdehau avatar

    fdehau/tui-rs

    10,875View on GitHub↗

    tui-rs is a Rust framework for building rich terminal user interfaces and dashboards. It provides a terminal layout engine for dividing the screen into flexible rectangular regions and a widget library for rendering data in a terminal. The project includes a cross-platform terminal backend abstraction layer to ensure consistent rendering and compatibility across different operating system terminal drivers. The framework covers a wide range of UI components, including data visualization tools such as charts, progress gauges, and sparklines, as well as structural elements like data tables, ite

    Rust
    View on GitHub↗10,875
  • rivo/tviewrivo avatar

    rivo/tview

    13,928View on GitHub↗

    tview is a library for building interactive text-based user interfaces in Go. It functions as a toolkit for managing event loops, user input, and screen rendering, providing a framework of pre-built widgets and an integrated layout engine for creating command-line applications. The project distinguishes itself through a comprehensive layout system that uses grid and flexbox models to create responsive designs. It also supports UI layer stacking to manage multiple screens and modal overlays. The framework includes a diverse suite of interactive components for data display, such as tables and

    Gogolangterminal-baseduser-interface
    View on GitHub↗13,928
  • spectreconsole/spectre.consolespectreconsole avatar

    spectreconsole/spectre.console

    11,210View on GitHub↗

    Spectre.Console is a .NET framework designed for building structured, feature-rich command-line applications. It provides a comprehensive toolkit for managing complex command hierarchies, type-safe argument parsing, and dependency injection, allowing developers to decouple business logic from input processing while maintaining modular application designs. The framework distinguishes itself through a sophisticated terminal user interface toolkit that enables the creation of dynamic, interactive console experiences. It utilizes a markup-based rendering system to display styled text, tables, cha

    C#ansi-colorscli-parserconsole
    View on GitHub↗11,210
  • textualize/richTextualize avatar

    Textualize/rich

    56,636View on GitHub↗

    Rich is a comprehensive library for building sophisticated command-line interfaces and terminal applications. It provides a robust console formatting engine and a layout framework that enables developers to render rich text, syntax-highlighted code, and complex data structures directly in the terminal. By utilizing a recursive constraint-based layout engine, the library allows for the creation of hierarchical grids, panels, and trees that maintain their structure even as terminal dimensions change. What distinguishes the library is its ability to manage persistent, real-time terminal interfac

    Pythonansi-colorsemojimarkdown
    View on GitHub↗56,636
  • textualize/toolongTextualize avatar

    Textualize/toolong

    3,921View on GitHub↗

    toolong is a terminal log viewer and TUI log manager designed for monitoring live log streams and navigating large log files. It functions as a log aggregator and JSONL formatter, capable of merging multiple log files into a single chronological view by automatically detecting timestamps. The application supports the visualization of structured data by pretty printing JSONL files and applying syntax highlighting to common web server log patterns. It handles large-scale data efficiently through virtual-sized scrollable views, allowing users to open compressed logs or files of any size without

    Pythonjsonlrichterminal
    View on GitHub↗3,921
  • facebook/reactfacebook avatar

    facebook/react

    245,669View on GitHub↗

    React is a JavaScript library for building user interfaces based on a component-driven architecture and unidirectional data flow.

    JavaScriptjavascriptuifrontend
    View on GitHub↗245,669
  • migueldeicaza/gui.csmigueldeicaza avatar

    migueldeicaza/gui.cs

    11,070View on GitHub↗

    gui.cs is a .NET terminal user interface toolkit and framework used to build interactive, cross-platform text-based applications. It provides a structured system for composing terminal views using a view hierarchy and a dedicated layout engine. The library distinguishes itself through a component-based widget system and a constraint-based layout engine that allows interfaces to remain responsive across different terminal window dimensions. It employs a virtual-screen buffer to minimize flickering during redraws and uses state-driven theme configurations to maintain persistent visual styles.

    C#
    View on GitHub↗11,070
  • yaronn/blessed-contribyaronn avatar

    yaronn/blessed-contrib

    15,745View on GitHub↗

    blessed-contrib is a terminal user interface framework and a Node.js console widget library designed for building data-driven command line interfaces. It serves as an ASCII data visualization toolkit and a dashboard framework for organizing grid-based layouts and interactive elements within a console. The project provides a collection of reusable terminal components, including a command line image renderer and tools for text-based graphic rendering. It specifically enables the creation of terminal dashboards through a system for positioning multiple widgets across rows and columns and a mecha

    JavaScript
    View on GitHub↗15,745
  • fmtlib/fmtfmtlib avatar

    fmtlib/fmt

    23,596View on GitHub↗

    fmt is a type-safe C++ text formatting library used to convert data into formatted strings and text. It serves as a high-performance string buffer utility and provided the basis for the formatting features introduced in the C++20 standard. The library shifts format string validation and size computation to the compilation phase to prevent runtime crashes and increase execution speed. It utilizes a memory-efficient interface to write formatted data directly into buffers, minimizing allocations and eliminating intermediate string overhead. The project covers a broad range of text processing ca

    C++
    View on GitHub↗23,596
  • bombshell-dev/clackbombshell-dev avatar

    bombshell-dev/clack

    7,878View on GitHub↗

    Clack is a Node.js CLI framework and prompt library designed for building stylized, interactive command-line user interfaces. It provides a toolkit for creating terminal applications that collect structured user input and display formatted information. The library includes a set of interactive terminal UI components, such as validated input fields for text and passwords, searchable selection menus with autocomplete, and grouped options for user choice. It also provides mechanisms for process visualization, including loading spinners, progress bars, and sequential task lists to communicate bac

    TypeScriptclicommand-linecommand-line-app
    View on GitHub↗7,878
  • jakewharton/mosaicJakeWharton avatar

    JakeWharton/mosaic

    2,583View on GitHub↗

    Mosaic is a declarative terminal user interface framework and display engine. It provides a toolkit for building interactive command-line applications by synchronizing a data model with the terminal screen to minimize manual redraws. The library functions as a layout engine for designing structured visual interfaces and real-time displays. It enables the development of interactive console programs, such as system monitors and games, by managing responsive user input and dynamic output updates.

    Kotlin
    View on GitHub↗2,583
  • busyloop/lolcatbusyloop avatar

    busyloop/lolcat

    6,546View on GitHub↗

    lolcat is a command line text processor and color filter that transforms standard text streams into rainbow gradients. It functions as a terminal text colorizer that modifies the visual presentation of shell output using ANSI escape codes. The tool processes text passed through Unix pipes to apply rainbow gradients and color highlights. It uses these visual effects to customize terminal output and differentiate blocks of text within a command line interface.

    Rubycliessentials
    View on GitHub↗6,546
  • donnemartin/gitsomedonnemartin avatar

    donnemartin/gitsome

    7,674View on GitHub↗

    Gitsome is a command-line interface tool for managing repositories, issues, and pull requests via the GitHub and GitHub Enterprise APIs. It provides an interactive shell environment featuring an embedded Python interpreter for programmatic automation and dynamic scripting, alongside a project bootstrapping utility for generating standard license and gitignore templates. The tool distinguishes itself with a schema-driven autocomplete engine that parses remote API definitions in real-time to provide context-aware command suggestions. It also implements an index-based navigation system that allo

    Python
    View on GitHub↗7,674
  • c-bata/go-promptc-bata avatar

    c-bata/go-prompt

    5,481View on GitHub↗

    go-prompt is a library for building interactive command-line interfaces in Go. It serves as a cross-platform console UI framework and terminal input manager, providing the tools necessary to capture user input and execute commands through a persistent interactive loop. The library features a dedicated auto-completion engine that provides real-time command suggestions. It also supports dynamic prompt prefixes updated via callback functions and a system for managing and recalling command history. The framework covers a broad range of terminal capabilities, including keyboard shortcut mapping,

    Goclicommand-lineinteractive
    View on GitHub↗5,481
  • gdamore/tcellgdamore avatar

    gdamore/tcell

    5,076View on GitHub↗

    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

    Go
    View on GitHub↗5,076
  • tui-rs-revival/ratatuitui-rs-revival avatar

    tui-rs-revival/ratatui

    21,091View on GitHub↗

    Ratatui is a Rust framework and cross-platform terminal renderer used to build rich terminal user interfaces. It functions as a toolkit for creating interactive command-line displays, dashboards, and data visualizations. The library employs an immediate mode rendering approach, where the interface is redrawn every frame based on the current application state. It uses a widget-based layout system to compose complex text-based interfaces. The framework includes a rectangle-based layout engine and a backend-agnostic drawing system to decouple UI logic from specific terminal emulators. It furthe

    Rust
    View on GitHub↗21,091
  • willmcgugan/textualwillmcgugan avatar

    willmcgugan/textual

    36,292View on GitHub↗

    Textual is a Python TUI framework and asynchronous UI library used to build interactive text user interfaces. It provides a component-based architecture for creating cross-platform applications that run in both terminal and web browser environments. The framework distinguishes itself by utilizing a CSS-based layout engine to apply visual styles to widgets and a command palette interface for discovering and executing application functions. It also supports hosting terminal-based interfaces on the web to enable remote access via a standard browser. The toolkit covers a broad range of capabilit

    Python
    View on GitHub↗36,292
  • 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
  • joeferner/redis-commanderjoeferner avatar

    joeferner/redis-commander

    3,961View on GitHub↗

    Redis Commander is a web-based management interface and graphical user interface for Redis databases. It serves as an administration tool for monitoring server configurations and managing data across multiple instances. The tool provides a visual key browser that organizes data into a hierarchical tree view and includes a key-value inspector with pagination for large datasets. It also features a browser-based command line interface with tab completion for executing raw database commands. Connectivity is supported for various deployment modes, including standalone servers, sentinel setups, an

    JavaScript
    View on GitHub↗3,961
  • mfontanini/presentermmfontanini avatar

    mfontanini/presenterm

    7,852View on GitHub↗

    Presenterm is a CLI presentation framework and tool used to create interactive slide decks directly in the terminal. It functions as a Markdown slide renderer, transforming Markdown files into formatted terminal presentations with support for synchronized speaker notes and custom YAML themes. The project distinguishes itself through a built-in terminal code executor that runs code snippets live during a presentation, replacing source blocks with real-time output. It also features a terminal image renderer capable of displaying local images, animated GIFs, and pre-rendered diagrams or mathemat

    Rustclimarkdownmarkdown-slides
    View on GitHub↗7,852