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
ratatui-org avatar

ratatui-org/ratatui

0
View on GitHub↗
21,277 stars·694 forks·Rust·MIT·16 viewsratatui.rs↗

Ratatui

Ratatui is a terminal rendering engine and library for the Rust language used to build interactive text-based user interfaces. It provides a framework for creating command-line dashboards and visual applications by rendering widgets and layouts directly to a terminal screen.

The project utilizes a backend-agnostic interface to decouple UI logic from terminal drivers and employs a constraint-based layout engine to divide screen space into nested rectangular areas. It manages rendering through an immediate-mode drawing loop and a buffer-based system to minimize screen flicker.

The library supports event-driven input handling for keyboard and mouse interactions and implements a stateful widget pattern to maintain internal data across render cycles. These capabilities enable the development of real-time terminal monitoring tools and complex command-line visualizations.

Features

  • Text-User Interface Rendering - Renders interactive text-based user interfaces using a specialized system of widgets and layouts.
  • Terminal User Interface Frameworks - Provides a comprehensive framework for building interactive text-based interfaces within command-line environments.
  • Rust TUI Frameworks - Provides a specialized framework for building rich terminal user interfaces specifically using the Rust language.
  • Constraint Layout Engines - Provides a constraint-based layout engine to recursively divide screen space into nested rectangular areas for widgets.
  • Event-Driven Input Handlers - Processes keyboard and mouse inputs through event-driven mechanisms to trigger interface updates and redraws.
  • Immediate Mode Frameworks - Employs an immediate-mode drawing loop that rebuilds the entire user interface on every frame based on application state.
  • Terminal Rendering Engines - Acts as a terminal rendering engine that maps application state to visual interfaces with automatic redraw management.
  • Terminal User Interfaces - Provides a set of widgets and tools to build complex, interactive terminal-based applications.
  • Real-Time Metric Visualization - Facilitates the development of live-updating terminal interfaces for visualizing system metrics and logs.
  • Terminal Frame Buffers - Uses an in-memory buffer to stage UI elements before rendering them to the terminal to prevent screen flicker.
  • CLI Dashboards - Enables the creation of visual layouts and data dashboards for CLI tools to improve information readability.
  • Terminal Interface Design - Implements design patterns for creating structured and responsive user interfaces within terminal environments.
  • Terminal-Agnostic Renderers - Implements a terminal-agnostic rendering interface that decouples UI logic from specific terminal drivers.
  • Stateful Widget Patterns - Implements a stateful widget pattern to track user interaction and focus across multiple rendering cycles.
  • Application Frameworks - Library for creating interactive terminal user interfaces.

Star history

Star history chart for ratatui-org/ratatuiStar history chart for ratatui-org/ratatui

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

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

Start searching with AI

Frequently asked questions

What does ratatui-org/ratatui do?

Ratatui is a terminal rendering engine and library for the Rust language used to build interactive text-based user interfaces. It provides a framework for creating command-line dashboards and visual applications by rendering widgets and layouts directly to a terminal screen.

What are the main features of ratatui-org/ratatui?

The main features of ratatui-org/ratatui are: Text-User Interface Rendering, Terminal User Interface Frameworks, Rust TUI Frameworks, Constraint Layout Engines, Event-Driven Input Handlers, Immediate Mode Frameworks, Terminal Rendering Engines, Terminal User Interfaces.

Which projects share features with ratatui-org/ratatui?

Projects with overlapping indexed features include: sboudrias/inquirer.js — Inquirer.js is a command line input framework and prompt library for Node.js applications. It provides a structured… jonathanslenders/python-prompt-toolkit — python-prompt-toolkit is a Python library and terminal user interface framework used for building interactive command… nsf/termbox-go — termbox-go is a Go terminal user interface library and cross-platform terminal emulator abstraction. It provides a… fdehau/tui-rs — tui-rs is a Rust framework for building rich terminal user interfaces and dashboards. It provides a terminal layout… prompt-toolkit/python-prompt-toolkit — This project is a Python terminal user interface library and toolkit designed for building interactive command-line… jakewharton/mosaic — Mosaic is a declarative terminal user interface framework and display engine. It provides a toolkit for building…

Projects sharing features with Ratatui

These projects share indexed features with Ratatui. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • sboudrias/inquirer.jsSBoudrias avatar

    SBoudrias/Inquirer.js

    21,578View on GitHub↗

    Inquirer.js is a command line input framework and prompt library for Node.js applications. It provides a structured set of tools for building interactive terminal interfaces, including menus, checklists, and text inputs, to gather user data and manage complex interactions. The framework allows for the creation of dynamic user experiences through branching prompt logic and the resolution of asynchronous configurations. Users can define custom prompts using a provided API and localize interface text into different languages. The library covers a wide range of input capabilities, including sing

    TypeScriptclicommand-linejavascript
    View on GitHub↗21,578
  • jonathanslenders/python-prompt-toolkitjonathanslenders avatar

    jonathanslenders/python-prompt-toolkit

    10,498View on GitHub↗

    python-prompt-toolkit is a Python library and terminal user interface framework used for building interactive command line interfaces. It provides a toolkit for constructing complex terminal applications with advanced input handling and layout management. The project features a real-time syntax highlighting engine and a rendering system that ensures correct alignment and display of double-width Unicode characters. It includes specialized capabilities for command line autocompletion, providing ghost text suggestions and searchable input history. The framework covers a broad range of interface

    Python
    View on GitHub↗10,498
  • nsf/termbox-gonsf avatar

    nsf/termbox-go

    4,786View on GitHub↗

    termbox-go is a Go terminal user interface library and cross-platform terminal emulator abstraction. It provides a system for creating text-based graphical interfaces by managing a terminal cell buffer and handling raw input events. The library functions as a terminal cell buffer manager and input handler. It maintains an internal grid of characters and colors, using a back buffer to synchronize updates to the physical screen and translate keyboard and mouse events into structured data. Its capability surface covers text user interface rendering and terminal display management, including cur

    Go
    View on GitHub↗4,786
  • 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
Compare all 30 related projects→