# Rust Terminal User Interface Libraries

> Search results for `terminal UI library for building TUIs in Rust` on awesome-repositories.com. 120 total matches; showing the first 50.

Explore on the web: https://awesome-repositories.com/q/terminal-ui-library-for-building-tuis-in-rust

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [this search on awesome-repositories.com](https://awesome-repositories.com/q/terminal-ui-library-for-building-tuis-in-rust).**

## Results

- [nabilatsoulcade/gms2-ui-library](https://awesome-repositories.com/repository/nabilatsoulcade-gms2-ui-library.md) (17 ⭐) — A Library Full of useful scripts for implementing your UI designs in Gamemaker Studio 2
- [charmbracelet/lipgloss](https://awesome-repositories.com/repository/charmbracelet-lipgloss.md) (10,591 ⭐) — 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
- [amanusk/s-tui](https://awesome-repositories.com/repository/amanusk-s-tui.md) (5,028 ⭐) — s-tui is a terminal-based CPU monitoring tool and stress testing utility. It provides a real-time interface for tracking processor frequency, temperature, power consumption, and utilization through visual graphs.

The project includes a thermal throttling detector that identifies performance drops by analyzing sensor data. It also functions as a metric-based script runner, capable of automatically executing custom shell scripts when monitored hardware metrics exceed predefined numeric thresholds.

The tool generates synthetic processor loads to verify thermal stability and hardware performance
- [thomas-mauran/chess-tui](https://awesome-repositories.com/repository/thomas-mauran-chess-tui.md) (1,106 ⭐) — Play chess in any terminal. Rust TUI, Stockfish, Lichess.
- [1jehuang/jcode](https://awesome-repositories.com/repository/1jehuang-jcode.md) (7,778 ⭐) — jcode is a framework for developing autonomous AI coding agents that automate software development tasks. It functions as an agent orchestrator, tool runtime, and semantic memory engine, enabling the creation of agents that can modify code, run tests, and iterate on their own functionality.

The project is distinguished by its use of recursive agent swarming, where a hierarchy of collaborating agents can spawn child agents to decompose complex tasks. It implements a semantic memory system that combines vector-based retrieval with graph-based relationship mapping to maintain context across sess
- [textualize/rich](https://awesome-repositories.com/repository/textualize-rich.md) (56,636 ⭐) — 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
- [reubeno/tui-uefi](https://awesome-repositories.com/repository/reubeno-tui-uefi.md) (0 ⭐) — Provides crates useful for building TUIs (Terminal User Interfaces) in a UEFI application or boot loader:
- [jonathanslenders/python-prompt-toolkit](https://awesome-repositories.com/repository/jonathanslenders-python-prompt-toolkit.md) (10,498 ⭐) — 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
- [anomalyco/opencode](https://awesome-repositories.com/repository/anomalyco-opencode.md) (175,152 ⭐) — OpenCode is a framework for orchestrating autonomous AI agents within development environments. It provides a multi-tiered architecture where primary assistants manage user interaction while specialized subagents handle specific tasks like planning, research, and code generation. The system includes a comprehensive command-line interface for managing these workflows, configuring agent behavior, and defining custom tools or commands through metadata-rich files.

The platform features a modular plugin system and extensive integration support, including standardized protocols for connecting local
- [gizak/termui](https://awesome-repositories.com/repository/gizak-termui.md) (13,574 ⭐) — 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
- [rust-in-action/code](https://awesome-repositories.com/repository/rust-in-action-code.md) (2,122 ⭐) — Source code for the book Rust in Action
- [manaflow-ai/cmux](https://awesome-repositories.com/repository/manaflow-ai-cmux.md) (22,717 ⭐) — cmux is a GPU-accelerated terminal emulator and workspace manager designed for coordinating multiple concurrent AI coding agents. It functions as an orchestration terminal that uses scriptable workspaces and split panes to manage parallel AI agent workflows, while also serving as a headless browser automation tool and a remote development relay.

The project differentiates itself through a programmatic control plane using a Unix domain socket and CLI, allowing for the automated management of terminal layouts and input delivery. It features an integrated web engine for programmatic DOM manipula
- [textualize/textual](https://awesome-repositories.com/repository/textualize-textual.md) (36,285 ⭐) — 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
- [extrawurst/gitui](https://awesome-repositories.com/repository/extrawurst-gitui.md) (22,118 ⭐) — Gitui is a terminal user interface and repository manager built with Rust. It provides a keyboard-driven visual environment for performing version control operations without the need to type manual command line arguments.

The application enables the management of Git branches, commits, and remote synchronization, alongside capabilities for stashing temporary work and managing submodules. It includes support for GPG commit signing to verify identity through cryptographic signatures.

Users can customize the experience through keyboard shortcut rebinding and visual theme adjustments. The interf
- [gnome-terminator/terminator](https://awesome-repositories.com/repository/gnome-terminator-terminator.md) (2,609 ⭐) — multiple GNOME terminals in one window
- [pallets/click](https://awesome-repositories.com/repository/pallets-click.md) (17,560 ⭐) — Click is a Python framework for building command-line interfaces. It provides a declarative approach to defining command structures, allowing developers to map functions to command-line arguments, options, and nested groups using decorators. The framework handles the complexities of parameter parsing, type validation, and help documentation generation automatically.

The project distinguishes itself through its hierarchical context system, which propagates configuration and state across nested commands, and its environment-aware parameter resolution that prioritizes command-line inputs, enviro
- [gitui-org/gitui](https://awesome-repositories.com/repository/gitui-org-gitui.md) (22,116 ⭐) — GitUI is a terminal-based interface for managing Git repositories, providing an interactive environment for executing version control operations, inspecting commit logs, and navigating file hierarchies. It functions as a keyboard-driven client that allows users to stage changes, manage branches, and review project history directly from the command line.

The application distinguishes itself through a focus on interface responsiveness and user-defined workflows. It utilizes background thread offloading and asynchronous data caching to maintain performance during complex operations, while offeri
- [dmadisetti/steam-tui](https://awesome-repositories.com/repository/dmadisetti-steam-tui.md) (1,021 ⭐) — Rust TUI client for steamcmd
- [julialang/julia](https://awesome-repositories.com/repository/julialang-julia.md) (48,856 ⭐) — Julia is a high-performance, dynamic programming language designed for scientific computing, data analysis, and complex mathematical modeling. It provides a specialized runtime environment that manages memory allocation and parallel processing, utilizing a just-in-time compiler to translate high-level source code into optimized machine instructions. This architecture allows the language to achieve execution speeds comparable to statically compiled languages while maintaining the flexibility of a dynamic scripting environment.

The language is distinguished by its multiple dispatch system, whic
- [marcusolsson/tui-go](https://awesome-repositories.com/repository/marcusolsson-tui-go.md) (2,112 ⭐) — A UI library for terminal applications.
- [directus/directus](https://awesome-repositories.com/repository/directus-directus.md) (36,030 ⭐) — Directus is a headless content platform that functions as a backend service, automatically generating REST and GraphQL APIs by performing introspection on existing SQL database schemas. It serves as a unified data orchestration layer, decoupling content management from frontend delivery while providing a secure, stateless gateway for database transactions.

The platform distinguishes itself through a granular role-based access control engine that enforces security policies at the field level across all API endpoints. It includes a visual, low-code administrative dashboard that allows non-techn
- [peco/peco](https://awesome-repositories.com/repository/peco-peco.md) (7,892 ⭐) — Peco is an interactive text filter and fuzzy finder for the terminal. It serves as a terminal user interface selection tool that filters standard input in real-time using fuzzy matching and regular expressions.

The tool preserves and renders ANSI color escape sequences from piped input streams while performing matching logic on plain-text versions. It supports multi-stage filtering, allowing users to freeze result sets to create a new base for subsequent refinements.

Capability areas include advanced search filtering with negative matching, multi-item selection, and the ability to pipe selec
- [firerpa/lamda](https://awesome-repositories.com/repository/firerpa-lamda.md) (7,834 ⭐) — This project is an Android RPA framework designed for automating user interfaces and system tasks on rooted Android devices using Python and ADB. It provides a suite of tools for rooted device management, allowing for programmatic control of system settings, application lifecycles, and shell command execution via a remote API.

The framework distinguishes itself through a combination of dynamic instrumentation and AI integration. It can inject scripts into running processes to hook Java interfaces and modifies application behavior in real time. Additionally, it supports large language model in
- [degra02/nordvpn-tui](https://awesome-repositories.com/repository/degra02-nordvpn-tui.md) (22 ⭐) — nordvpn-tui is a terminal-based user interface (TUI) tool built in Rust that provides a simple and interactive way to manage NordVPN connections. The tool allows users to browse, search, and select countries and cities for VPN connection directly from the terminal using keyboard navigation.
- [tqdm/tqdm](https://awesome-repositories.com/repository/tqdm-tqdm.md) (31,203 ⭐) — Tqdm is a terminal-based progress indicator that provides real-time visual feedback for long-running tasks and data processing pipelines. It functions as an iteration tracking wrapper, allowing developers to monitor the completion status of loops and data streams by wrapping standard iterables without modifying the underlying data source.

The project distinguishes itself through its use of terminal escape sequences to render dynamic text and graphical bars that update in place. It supports both automatic tracking of iterable collections and manual progress incrementing for non-linear tasks wh
- [chleba/tui-slides](https://awesome-repositories.com/repository/chleba-tui-slides.md) (0 ⭐) — Terminal Presentation tool with modern TUI capable to render images in terminal and with many more widgets.
- [chakra-ui/chakra-ui](https://awesome-repositories.com/repository/chakra-ui-chakra-ui.md) (40,438 ⭐) — Chakra UI is a design system component library and styling framework that provides a foundation for building consistent, accessible web interfaces. It functions as a centralized theme configuration engine, using a design-token-driven architecture to manage visual properties like color palettes and spacing rules as a single source of truth across an entire application.

The framework distinguishes itself through a type-safe styling utility that automatically generates TypeScript definitions from theme configurations, ensuring accurate property referencing and editor autocompletion. It employs a
- [fermyon/spin](https://awesome-repositories.com/repository/fermyon-spin.md) (6,443 ⭐) — Spin is a WebAssembly serverless framework and development toolchain for building and running portable microservices. It functions as an event-driven orchestrator and runtime that executes WebAssembly components, allowing developers to map HTTP requests, Redis messages, and cron schedules to specific modules.

The project distinguishes itself by implementing a Wasm-based AI inference gateway, enabling components to perform model inference and generate text embeddings. It utilizes the WebAssembly Component Model and WASI for language-agnostic composition and portable host interfacing, while emp
- [learnbyexample/tui-apps](https://awesome-repositories.com/repository/learnbyexample-tui-apps.md) (990 ⭐) — Terminal User Interface (TUI) apps
- [nunomaduro/collision](https://awesome-repositories.com/repository/nunomaduro-collision.md) (4,641 ⭐) — Collision is a command-line interface error report formatter and developer debugging tool. It functions as a terminal UI component that converts raw application crash logs into stylized, readable error messages.

The tool focuses on application crash diagnostics and command-line error reporting to improve the developer experience. It transforms technical error reports and stack traces into a clean, human-readable format to simplify the process of identifying and fixing software bugs.

The project achieves this by intercepting standard error streams and using pattern-matching to parse raw log s
- [graphql-rust/juniper](https://awesome-repositories.com/repository/graphql-rust-juniper.md) (5,963 ⭐) — Juniper is a GraphQL server library and schema engine for Rust. It provides a toolkit for building type-safe APIs by mapping native Rust data structures to GraphQL objects, inputs, and scalars. The project functions as an execution engine that can process queries and mutations either through a network server or as a headless engine for local execution.

The library is runtime-agnostic, allowing it to bridge GraphQL processing with various asynchronous Rust web frameworks. It includes a subscription framework that manages persistent WebSocket connections to push real-time data updates to client
- [fdehau/tui-rs](https://awesome-repositories.com/repository/fdehau-tui-rs.md) (10,875 ⭐) — 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
- [microsoft/edit](https://awesome-repositories.com/repository/microsoft-edit.md) (13,550 ⭐) — This project is a terminal-based text editor and local file manipulation utility designed for modifying documents directly within a command-line environment. It functions as a text processing tool that enables users to perform file updates and content adjustments without requiring a graphical user interface.

The editor provides a terminal-based user interface framework that renders interactive components through low-level character stream manipulation. It supports automated text processing by utilizing regular expression-based pattern matching to locate and replace character sequences across
- [skim-rs/skim](https://awesome-repositories.com/repository/skim-rs-skim.md) (6,592 ⭐) — 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
- [0xjacky/nginx-ui](https://awesome-repositories.com/repository/0xjacky-nginx-ui.md) (11,172 ⭐) — This project is a web-based management interface designed for the administration, monitoring, and configuration of Nginx server instances. It functions as a centralized platform for managing reverse proxy settings, traffic routing, and server lifecycles, providing a visual dashboard to replace manual configuration file editing.

The platform distinguishes itself through integrated infrastructure automation and observability tools. It supports distributed environments by synchronizing configuration states across multiple nodes and containerized services, while offering artificial intelligence a
- [orhun/gpg-tui](https://awesome-repositories.com/repository/orhun-gpg-tui.md) (1,728 ⭐) — gpg-tui is a Terminal User Interface for GnuPG.
- [dankamongmen/notcurses](https://awesome-repositories.com/repository/dankamongmen-notcurses.md) (4,347 ⭐) — 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
- [avelino/awesome-go](https://awesome-repositories.com/repository/avelino-awesome-go.md) (175,576 ⭐) — This project serves as a comprehensive language ecosystem index, functioning as a centralized, community-curated directory for the Go programming language. It organizes a vast landscape of software components, libraries, and development tools into a structured, navigable hierarchy, enabling developers to efficiently discover resources tailored to specific functional domains.

The repository distinguishes itself through a decentralized contribution model, where community-driven updates ensure the index remains current with the rapidly evolving software landscape. Beyond simple resource listing,
- [hako/oeis-tui](https://awesome-repositories.com/repository/hako-oeis-tui.md) (90 ⭐) — A TUI and CLI for browsing the On-Line Encyclopedia of Integer Sequences (OEIS) in the terminal.
- [forem/forem](https://awesome-repositories.com/repository/forem-forem.md) (22,726 ⭐) — Forem is an open-source platform designed for building and managing technical communities. It functions as a social publishing engine that enables members to share long-form content, participate in threaded discussions, and engage through social interactions. The platform provides tools for organizations to maintain branded profiles, host community hackathons, and facilitate collaborative learning through structured educational tracks.

Beyond its social features, Forem integrates advanced capabilities for AI agent workflow orchestration and codebase knowledge graphing. It allows developers to
- [terminals-origin/terminals](https://awesome-repositories.com/repository/terminals-origin-terminals.md) (1,361 ⭐) — Terminals is a secure, multi tab terminal services/remote desktop client. It uses Terminal Services ActiveX Client (mstscax.dll).  The project started from the need of controlling multiple connections simultaneously. It is a complete replacement for the mstsc.exe (Terminal Services) client. This is official source moved from Codeplex.
- [wtfutil/wtf](https://awesome-repositories.com/repository/wtfutil-wtf.md) (16,971 ⭐) — This project is a modular, terminal-based dashboard framework designed to aggregate and display real-time information within a grid-aligned interface. It functions as a centralized monitoring tool that translates data from local system resources, infrastructure services, and external web APIs into a unified, text-based display.

The dashboard is distinguished by its plugin-based architecture, which allows users to encapsulate distinct data sources and display logic into isolated, independently managed modules. Users define their workspace through declarative configuration files or an interacti
- [grpc/grpc-rust](https://awesome-repositories.com/repository/grpc-grpc-rust.md) (12,338 ⭐) — grpc-rust is a native gRPC framework for Rust designed for building high-performance remote procedure call clients and servers. It provides an asynchronous communication stack and a protocol buffers implementation for encoding, decoding, and generating type-safe code from service definitions.

The project enables the implementation of unary and bi-directional data streaming over the HTTP/2 protocol. It includes specialized support for gRPC-Web integration, allowing browser-based clients to communicate with services through protocol translation.

The infrastructure covers a broad range of distr
- [tui-rs-revival/ratatui](https://awesome-repositories.com/repository/tui-rs-revival-ratatui.md) (21,091 ⭐) — 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
- [agl-alexglopez/maze-tui](https://awesome-repositories.com/repository/agl-alexglopez-maze-tui.md) (82 ⭐) — This repository implements various maze building and solving algorithms in Rust. Unicode characters help explore these beautiful algorithms in a TUI!
- [dioxuslabs/dioxus](https://awesome-repositories.com/repository/dioxuslabs-dioxus.md) (36,400 ⭐) — Dioxus is a cross-platform development framework designed for building native desktop, mobile, and web applications from a single codebase. It utilizes a declarative component model and macro-powered syntax to define reusable interface elements, which are then rendered as native widgets or web elements. At its core, the framework employs a signal-based reactivity system that tracks state dependencies to trigger granular updates, ensuring efficient interface performance without re-rendering the entire application tree.

The framework distinguishes itself through a unified full-stack runtime tha
- [roeyazroel/linear-tui](https://awesome-repositories.com/repository/roeyazroel-linear-tui.md) (31 ⭐) — A terminal user interface (TUI) for Linear built with Go and tview.
- [santinic/how2](https://awesome-repositories.com/repository/santinic-how2.md) (5,780 ⭐) — how2 is a terminal-based tool that translates plain-English questions into shell commands using AI and StackOverflow data. It functions as a command-line interface where users describe what they want to do in natural language, and the tool returns the appropriate Unix shell or PowerShell command, with support for generating multi-line Bash scripts from natural language prompts.

The tool distinguishes itself through its interactive answer browsing mode, which lets users select and copy from multiple StackOverflow answers directly in the terminal. It includes a fallback search mechanism that qu
- [josuebarretogit/manga-tui](https://awesome-repositories.com/repository/josuebarretogit-manga-tui.md) (0 ⭐) — Terminal-based manga reader and downloader written in rust 🦀
- [cockroachdb/cockroach](https://awesome-repositories.com/repository/cockroachdb-cockroach.md) (32,207 ⭐) — Cockroach is a distributed SQL database designed to scale horizontally across multiple nodes while maintaining strict ACID compliance and global data consistency. It functions as a relational database engine that automatically partitions data into ranges, rebalancing them across a cluster to accommodate growing storage and throughput requirements. By utilizing a distributed consensus protocol, the system ensures that all nodes agree on the order of operations, providing fault tolerance and continuous availability even in the event of hardware failures.

The system distinguishes itself through
