Topics / #tui

Tui projects on GitHub

Text-based user interfaces that render rich layouts inside a terminal.

As of , the most-starred Tui projects on GitHub are openclaw (392.2K stars), pi (115.7K stars) and neovim (103K stars). GitHub.Locker tracks 203 Tui repositories with 3.4M stars combined. The fastest-growing on October 16 was magpie, with +656 stars in a day.

203Projects
3.4MStars in total
+3.7KStars in a day

Hot right now

Most stars gained in a day · Oct 16

The all-time top

Top 100 of 203 · by stars

  1. #1 · openclaw/openclaw

    openclaw

    An open-source AI assistant that runs on your own computer and meets you in the chat apps you already use — WhatsApp, Telegram, Discord, iMessage, Slack and 20+ more.

    392.2K
  2. #2 · earendil-works/pi

    pi

    Pi is an agent harness: a toolkit of packages for building and running AI agents, including a self-extensible interactive coding agent CLI, a unified multi-provider LLM API, an agent runtime, and a terminal UI library.

    115.7K
  3. #3 · neovim/neovim

    neovim

    Neovim is a fork of Vim, a modal text editor, rebuilt to be more extensible, maintainable, and friendly to multiple contributors and advanced UIs.

    103K
  1. 4

    deer-flow

    84Kbytedance/deer-flow · Python

    DeerFlow is an open-source long-horizon super-agent harness from ByteDance that researches, codes, and creates by orchestrating sub-agents, memory, sandboxes and extensible skills, handling tasks that can take minutes to hours.

  2. 5

    lazygit

    83.3Kjesseduffield/lazygit · Go

    Lazygit is a simple terminal UI (TUI) for git that lets you stage, commit, rebase, merge and branch through an interactive visual interface instead of memorizing git CLI commands.

  3. 6

    oh-my-openagent

    70.1Kcode-yeongyu/oh-my-openagent · TypeScript

    OmO (oh-my-openagent) is a command-line AI agent: you type one 'omo' command with a task, and it researches, plans, writes code, and verifies the result until the job is actually finished, mixing multiple AI models as needed.

  4. 7

    rich

    57.6KTextualize/rich · Python

    Rich is a Python library that adds color, styling, and rich formatting to terminal output: tables, progress bars, markdown, syntax-highlighted code, and pretty tracebacks, all out of the box.

  5. 8

    dive

    54.6Kwagoodman/dive · Go

    dive is a CLI tool that breaks a Docker or OCI image into its layers, shows what each layer contains, and points out where the image wastes space so you can shrink it.

  6. 9

    lazydocker

    53.2Kjesseduffield/lazydocker · Go

    Lazydocker is a simple terminal UI for both docker and docker-compose, written in Go with the gocui library - 'the lazier way to manage everything docker', as its tagline goes.

  7. 10

    awesome-java

    49.3Kakullpp/awesome-java

    A curated list of frameworks, libraries, tools and resources for the Java programming language, organized into categories like AI, build tools, caching, CLI, bytecode manipulation and more.

  8. 11

    helix

    46.6Khelix-editor/helix · Rust

    Helix is a modal text editor inspired by Kakoune and Neovim, written in Rust, with built-in language server support and tree-sitter powered syntax highlighting and code editing out of the box.

  9. 12

    mitmproxy

    45.7Kmitmproxy/mitmproxy · Python

    mitmproxy is an interactive, SSL/TLS-capable intercepting proxy for HTTP/1, HTTP/2, and WebSockets, used by penetration testers and developers to inspect and modify traffic. mitmdump is its CLI version, and mitmweb is a web-based interface.

  10. 13

    bubbletea

    45.4Kcharmbracelet/bubbletea · Go

    Bubble Tea is a Go framework for building terminal user interfaces (TUIs), based on The Elm Architecture. It handles rendering, input, and state management so you can focus on your app's model, update, and view logic.

  11. 14

    herdr

    44.4Kherdrdev/herdr · Rust

    Herdr is a terminal runtime that coding agents like Claude Code, Codex, Cursor, OpenCode, and Grok live on — it is a background server/multiplexer that keeps their terminal sessions running even after you close the client or lose your SSH connection, while organizing multiple agents into panes you can monitor at a glance.

  12. 15

    yazi

    42.9Ksxyazi/yazi · Rust

    Yazi (means 'duck') is a blazing fast terminal file manager written in Rust, built on non-blocking async I/O for an efficient, user-friendly and customizable file management experience.

  13. 16

    vim

    41.1Kvim/vim · Vim Script

    Vim (Vi IMproved) is a greatly improved version of the classic UNIX editor Vi - a text editor geared to editing programs and other plain text files. The current release is version 9.2.

  14. 17

    Codewhale

    41.1Kcodewhale-hq/Codewhale · Rust

    Codewhale is an open-source coding agent that runs in your terminal: it reads your project, edits files, runs shell commands, and checks its own work, using whichever hosted or local model you pick.

  15. 18

    ink

    40.1Kvadimdemedes/ink · TypeScript

    Ink is React for the terminal: a library for building interactive command-line apps out of components, with the same component-based UI experience React offers in the browser.

  16. 19

    textual

    37.5KTextualize/textual · Python

    Textual is a lean application framework for Python: you build text-based user interfaces with a simple Python API, and the finished apps run both in the terminal and in a web browser.

  17. 20

    DeepSeek-Reasonix

    35.8Kesengine/DeepSeek-Reasonix · Go

    Reasonix is a coding agent for complex software engineering tasks, built as a single local engine that you access through a terminal, desktop app, browser, or your editor via ACP.

  18. 21

    QwenPaw

    35.8Kagentscope-ai/QwenPaw · TypeScript

    QwenPaw is a personal AI assistant that you deploy yourself (locally or in the cloud), which remembers context across sessions, runs tasks/automations, and reaches you through chat apps like Discord, Telegram, and WeChat. It is extensible with Skills, Plugins, and MCP tools.

  19. 22

    zellij

    35.8Kzellij-org/zellij · Rust

    Zellij is a terminal workspace (often called a terminal multiplexer) that lets you split your terminal into panes and tabs, with layouts, plugins, and a focus on being easy to use out of the box while still powerful.

  20. 23

    oh-my-pi

    35.7Kcan1357/oh-my-pi · TypeScript

    omp (oh-my-pi) is a terminal coding agent — a fork of Mario Zetchner's Pi with the IDE wired in, built by Stencil Labs: 60+ model providers, 31 built-in tools, 14 LSP and 28 debugger ops, around 80k lines of Rust core.

  21. 24

    btop

    35Karistocratos/btop · C++

    A terminal resource monitor that shows usage and stats for processor, memory, disks, network and processes. It is the C++ version and continuation of bashtop and bpytop.

  22. 25

    k9s

    34.8Kderailed/k9s · Go

    K9s is a terminal UI that lets you navigate, observe and manage Kubernetes clusters in real time instead of typing raw kubectl commands.

  23. 26

    glances

    33.8Knicolargo/glances · Python

    Glances is an open-source cross-platform system monitoring tool, a top/htop alternative that shows CPU, memory, disk, network, containers, sensors, and running processes in one dashboard, reachable via terminal, web UI, API, or an MCP server for AI assistants.

  24. 27

    atuin

    32Katuinsh/atuin · Rust

    Atuin replaces your shell history with a SQLite database, records extra context for every command, and adds a full-screen interactive search UI — with optional fully encrypted sync of history between machines.

  25. 28

    micro

    29.7Kmicro-editor/micro · Go

    micro is a terminal-based text editor aiming to be easy to use and intuitive — a kind of successor to nano, packaged as a single static binary that's comfortable enough for full-time work in a terminal or over SSH.

  26. 29

    crush

    28.7Kcharmbracelet/crush · Go

    A terminal-based AI coding agent from Charm: it wires your tools, code, and workflows into the LLM of your choice and works as a coding partner right in your terminal.

  27. 30

    glow

    27.7Kcharmbracelet/glow · Go

    Glow is a terminal-based markdown reader: it renders markdown files with style, discovers local markdown files for you, and lets you read documentation right on the command line.

  28. 31

    LazyVim

    27.7KLazyVim/LazyVim · Lua

    LazyVim is a pre-made Neovim configuration built on the lazy.nvim plugin manager, designed to be easy to customize and extend.

  29. 32

    grok-build

    27.4Kxai-org/grok-build · Rust

    Grok Build is SpaceXAI's terminal-based AI coding agent. It runs as a full-screen TUI that understands your codebase, edits files, executes shell commands, searches the web, and manages long-running tasks, either interactively, headlessly for scripting/CI, or embedded in editors via the Agent Client Protocol (ACP).

  30. 33

    gum

    24.5Kcharmbracelet/gum · Go

    Gum is a tool for glamorous shell scripts: interactive prompts, spinners, and styled output for bash or any shell, powered by Charm's Bubbles and Lip Gloss — without writing any Go code.

  31. 34

    superfile

    23.8Kyorukot/superfile · Go

    A pretty and modern terminal file manager — a keyboard-driven TUI app written in Go for browsing and managing files right from your shell.

  32. 35

    ratatui

    23Kratatui/ratatui · Rust

    Ratatui is a Rust crate for building terminal user interfaces — text-based UIs for command-line applications, dashboards and other interactive console programs.

  33. 36

    claude-code

    22.9Kclaude-code-best/claude-code · TypeScript

    Claude Code Best (CCB) is a full open-source engineering reconstruction of Anthropic's official Claude Code CLI agent — buildable, runnable and debuggable — extended with extra features like goal-driven workflows, multi-agent orchestration, voice input and computer/browser control, while keeping full compatibility with the original Claude Code configuration.

  34. 37

    witr

    22.7Kpranshuparmar/witr · Go

    witr answers one question: 'why is this running?' Point it at a process, port, container, or file, and it traces the exact chain of supervisors, services, and shells that started it.

  35. 38

    gitui

    22.6Kgitui-org/gitui · Rust

    GitUI is a blazing-fast terminal UI for git written in Rust: the comfort of a git GUI, but running entirely in your terminal.

  36. 39

    nnn

    22.1Kjarun/nnn · C

    nnn (n3) is a terminal file manager built for speed and low resource use. The binary is typically around 100KB, it usually needs less than 3.5MB of resident memory, and it runs fine even with 8 colors.

  37. 40

    prime-agent

    22.1KPrimeIntellect-ai/prime-agent · Rust

    Prime Agent is an open-source coding and research agent for general and long-running work. It is built on two abstractions: the Recursive Language Model (RLM) programming model and a Continual Harness that keeps prompts, memories and skills as durable, refinable state.

  38. 41

    Ciphey

    21.7Kbee-san/Ciphey · Rust

    ciphey automatically decrypts ciphertext without knowing the key or cipher, decodes encodings and cracks hashes. It is the Rust-built next generation of Ciphey — roughly 7x faster per decode — and the same team intends it to fully replace the original.

  39. 42

    lazy.nvim

    21.7Kfolke/lazy.nvim · Lua

    lazy.nvim is a modern plugin manager for Neovim. It installs and updates your plugins, shows them in a built-in UI, and keeps startup fast through automatic caching, bytecode compilation and lazy-loading.

  40. 43

    Inquirer.js

    21.6KSBoudrias/Inquirer.js · TypeScript

    Inquirer.js is a collection of ready-made interactive command line prompts for Node.js CLIs — input fields, selectable lists, checkboxes, confirms and more — so you don't build terminal question UIs by hand.

  41. 44

    awesome-neovim

    21.5KrockerBOO/awesome-neovim · Shell

    A curated catalog of Neovim plugins, grouped by what they do - from plugin managers and LSP tooling to colorschemes, Git integration and AI assistants.

  42. 45

    goaccess

    21.1Kallinurl/goaccess · C

    GoAccess is an open source real-time web log analyzer and interactive viewer. It parses your web server access logs and shows HTTP statistics live, either in a terminal UI or as an HTML dashboard in your browser.

  43. 46

    jcode

    20.9K1jehuang/jcode · Rust

    jcode is a high-performance coding agent harness written in Rust — a terminal-based AI coding agent that connects to LLM providers like Claude, OpenAI and Gemini and drives coding work from your TUI.

  44. 47

    awesome-tuis

    20.9Krothgar/awesome-tuis

    A community-maintained catalog of TUI applications — programs that run in your terminal and offer some level of interactivity — organized into themed sections.

  45. 48

    fx

    20.7Kantonmedv/fx · Go

    fx is a terminal JSON viewer and processor — a command-line tool for exploring and transforming JSON data right in your terminal.

  46. 49

    hummingbot

    20.5Khummingbot/hummingbot · Python

    An open-source Python framework for building and deploying automated crypto trading bots across centralized and decentralized exchanges. Its users generated over $34 billion in volume across 140+ venues in the past year, and it is free under the Apache 2.0 license.

  47. 50

    SpaceVim

    20.2Kwsdjeg/SpaceVim · Vim Script

    SpaceVim is a modular configuration for Vim and Neovim, inspired by spacemacs, that turns a plain editor into a batteries-included development environment.

  48. 51

    nerdtree

    20.1Kpreservim/nerdtree · Vim Script

    NERDTree is a file system explorer plugin for Vim: it shows your directories as a tree inside the editor, so you can browse, open files, and run basic file operations without leaving Vim.

  49. 52

    carbonyl

    19.5Kfathyb/carbonyl · Rust

    Carbonyl is a Chromium-based browser that runs entirely inside your terminal, so you can browse the modern web without leaving the command line.

  50. 53

    spotify-tui

    19.4KRigellute/spotify-tui · Rust

    Spotify TUI is a Spotify client that runs entirely in the terminal, written in Rust. The binary is called spt — a keyboard-driven way to search music and control Spotify playback without opening the GUI app.

  51. 54

    LunarVim

    19.3KLunarVim/LunarVim · Lua

    LunarVim is an IDE layer for Neovim: a free, community-driven setup that turns a plain Neovim install into a full IDE with sane defaults.

  52. 55

    browsh

    19.1Kbrowsh-org/browsh · JavaScript

    Browsh is a fully modern text-based browser: it renders real web pages and web apps as pure text in your terminal, with a headless Firefox doing the actual browsing behind the scenes.

  53. 56

    json-render

    18.7Kvercel-labs/json-render · TypeScript

    json-render is a Generative UI framework: AI generates interfaces from natural language prompts, but output is constrained to a catalog of components you define, so you keep reliability and predictability while letting AI drive the UI.

  54. 57

    vim-airline

    18Kvim-airline/vim-airline · Vim Script

    vim-airline is a statusline and tabline plugin for Vim: a lean, fast bar at the bottom of every Vim window that shows your mode, current file, VCS info and cursor position at a glance.

  55. 58

    ctop

    17.8Kbcicen/ctop · Go

    ctop is a terminal tool that shows a top-like, real-time overview of metrics for all your running containers, plus a detailed single-container view.

  56. 59

    navi

    17.8Kdenisidoro/navi · Rust

    navi is an interactive cheatsheet tool for the command-line: you browse cheatsheets — written by you or downloaded from maintainers — and execute commands straight from them.

  57. 60

    ranger

    17.4Kranger/ranger · Python

    Ranger is a console file manager with VI key bindings — a minimalistic curses interface for browsing the directory hierarchy, with previews, tabs and bookmarks.

  58. 61

    wtf

    17.1Kwtfutil/wtf · Go

    WTF (aka 'wtfutil') is a personal information dashboard for your terminal, giving at-a-glance access to your important but rarely-needed stats and data. It is free and open-source and is used by thousands of developers and tech people.

  59. 62

    DeepCode

    16.7KHKUDS/DeepCode · Python

    An open agentic coding platform from HKUDS: a multi-agent harness that turns natural language and even research papers into production-ready code, working directly in your repository.

  60. 63

    OpenShell

    16.5KNVIDIA/OpenShell · Rust

    OpenShell is an open-source runtime for running autonomous AI agents inside isolated sandboxes. Declarative YAML policies protect your files, credentials, and infrastructure from unauthorized access and data exfiltration.

  61. 64

    OpenHarness

    16KHKUDS/OpenHarness · Python

    OpenHarness is an open-source Python agent harness: the infrastructure that turns an LLM into a working agent with tool use, skills, memory and multi-agent coordination. It also ships ohmo, a personal agent that works for you in chat apps.

  62. 65

    blessed-contrib

    15.8Kyaronn/blessed-contrib · JavaScript

    blessed-contrib is a library for building terminal dashboards and other text-UI apps using ASCII/ANSI art and JavaScript, on top of the blessed terminal UI library.

  63. 66

    memray

    15.4Kbloomberg/memray · Python

    Memray is a memory profiler for Python. It tracks memory allocations in Python code, native extension modules and the interpreter itself, then builds reports like flame graphs from the captured data.

  64. 67

    duf

    15.3Kmuesli/duf · Go

    duf is a terminal utility for checking disk usage and free space — a user-friendly, better-looking alternative to df for Linux, BSD, macOS and Windows.

  65. 68

    lime

    15.3Klimetext/lime

    Lime is an open source project aiming to be an API-compatible alternative to the Sublime Text editor, so existing Sublime Text plugins can be reused without authors supporting multiple APIs.

  66. 69

    sampler

    14.8Ksqshq/sampler · Go

    Sampler is a terminal tool that repeatedly runs shell commands and turns their output into live visualizations like charts and gauges, with optional alerts, all configured through a single YAML file.

  67. 70

    edit

    14.7Kmicrosoft/edit · Rust

    Edit is a small terminal text editor from Microsoft for quick, simple jobs — an homage to the classic MS-DOS Editor, rebuilt with a modern interface and input controls similar to VS Code.

  68. 71

    magpie

    14.4Kyetone/magpie · Go

    Magpie is a menu bar app that lists every AI coding agent installed on your machine next to the model each one is currently set to; click a value and pick a different model from a dropdown.

  69. 72

    tview

    14.1Krivo/tview · Go

    tview is a Go package that provides ready-made, interactive widgets for building terminal user interfaces: input forms, text views, text areas, tables, tree views, lists, images, layouts and modal windows.

  70. 73

    bottom

    14.1KClementTsang/bottom · Rust

    bottom (btm) is a customizable graphical process/system monitor that runs in your terminal. It shows live charts of CPU, memory, network, disk and temperature usage, and works on Linux, macOS and Windows.

  71. 74

    webpack-dashboard

    14KFormidableLabs/webpack-dashboard · JavaScript

    A CLI dashboard for your webpack dev server: instead of a wall of scrolling build output, you get a tidy terminal dashboard with your build status, errors and log at a glance.

  72. 75

    opencode

    13.8Kopencode-ai/opencode · Go

    It's an AI coding agent for your terminal: a Go CLI with an interactive TUI where AI models help you code, debug and run commands without leaving the shell.

  73. 76

    MiMo-Code

    13.7KXiaomiMiMo/MiMo-Code · TypeScript

    MiMoCode is a terminal-native AI coding assistant that can read and write code, run commands, manage Git, and keep a persistent memory of your project across sessions while continuously improving itself.

  74. 77

    termui

    13.6Kgizak/termui · Go

    termui is a cross-platform terminal dashboard and widget library for Go, used to build text-based UIs with charts, gauges, and tables right in the terminal.

  75. 78

    opentui

    13.6Kanomalyco/opentui · TypeScript

    OpenTUI is a library for building terminal user interfaces — interactive, text-mode apps that run in the terminal, written in TypeScript.

  76. 79

    tig

    13.4Kjonas/tig · C

    Tig is an ncurses-based text-mode interface for Git. It works mainly as a Git repository browser, but can also help stage changes for commit at the chunk level and act as a pager for output from Git commands.

  77. 80

    Cataclysm-DDA

    13.4KCleverRaven/Cataclysm-DDA · C++

    Cataclysm: Dark Days Ahead is a turn-based survival game set in a procedurally generated post-apocalyptic world, where you scavenge supplies and fight zombies, giant insects, killer robots, and other survivors.

  78. 81

    ccstatusline

    13.3Ksirmalloc/ccstatusline · TypeScript

    ccstatusline is a highly customizable status line for the Claude Code CLI, showing model info, git branch, token usage and other metrics right in your terminal.

  79. 82

    XHS-Downloader

    13KJoeanAmier/XHS-Downloader · JavaScript

    XHS-Downloader is a tool for extracting share links and downloading posts (images, videos, live photos and covers) from Xiaohongshu (XiaoHongShu / RedNote).

  80. 83

    gping

    12.7Korf/gping · Rust

    gping is a command-line tool written in Rust that pings one or more hosts and shows the response times as a live graph right in your terminal, instead of the usual scrolling text output of ping.

  81. 84

    ViMax

    12.7KHKUDS/ViMax · Python

    ViMax is an agentic AI framework that acts as an all-in-one director, screenwriter, producer, and video generator: give it a concept, script, or novel, and it autonomously handles scriptwriting, storyboarding, character creation, and final video assembly.

  82. 85

    gh-dash

    12.6Kdlvhdr/gh-dash · Go

    gh-dash is a terminal UI (TUI) dashboard that shows your GitHub pull requests and issues right in the terminal, so you never have to switch to a browser to check them.

  83. 86

    posting

    12.5Kdarrenburns/posting · Go

    Posting is an HTTP client that lives in your terminal — a keyboard-driven alternative to Postman and Insomnia for building and sending API requests.

  84. 87

    lipgloss

    11.9Kcharmbracelet/lipgloss · Go

    Lip Gloss is a Go library for styling terminal output and building terminal layouts: colors, borders, alignment, padding and composition, built with TUIs in mind.

  85. 88

    blessed

    11.9Kchjj/blessed · JavaScript

    A curses-like terminal UI library for Node.js: it reimplements ncurses on top of terminfo/termcap and layers a widget API on top for building terminal applications.

  86. 89

    slides

    11.7Kmaaslalani/slides · Go

    Slides is a terminal-based tool for creating and presenting markdown presentations directly inside your terminal.

  87. 90

    spectre.console

    11.7Kspectreconsole/spectre.console · C#

    Spectre.Console is a .NET library that makes it easier to build beautiful, cross-platform console applications, with tables, panels, markup, and rich text styling.

  88. 91

    Terminal.Gui

    11.3Ktui-cs/Terminal.Gui · C#

    Terminal.Gui is a cross-platform toolkit for building sophisticated terminal UI (TUI) applications on .NET, running consistently on Windows, macOS, and Linux/Unix.

  89. 92

    bashtop

    11.1Karistocratos/bashtop · Shell

    Bashtop is a terminal-based resource monitor for Linux, macOS and FreeBSD that shows usage and stats for the processor, memory, disks, network and running processes.

  90. 93

    kakoune

    11.1Kmawww/kakoune · C++

    Kakoune is a modal code editor that runs in the terminal and implements Vi's 'keystrokes as a text editing language' model. It was originally inspired by Vim and puts a strong focus on interactivity and multiple selections.

  91. 94

    nvtop

    11.1KSyllo/nvtop · C

    NVTOP (Neat Videocard TOP) is a htop-like task monitor for GPUs and accelerators: it runs in the terminal, handles multiple GPUs at once and shows what each device is doing, including which processes are using it.

  92. 95

    inspector

    11.1Kmodelcontextprotocol/inspector · TypeScript

    MCP Inspector is a developer tool for inspecting Model Context Protocol (MCP) servers, shipped as a single npm package with web, CLI, and TUI interfaces for testing and debugging.

  93. 96

    bpytop

    10.9Karistocratos/bpytop · Python

    bpytop is a terminal resource monitor that shows real-time usage and stats for the processor, memory, disks, network, and running processes. It is a Python port and continuation of the earlier bashtop project.

  94. 97

    tui-rs

    10.9Kfdehau/tui-rs · Rust

    tui-rs is a Rust library for building rich terminal user interfaces and dashboards, inspired by the JavaScript library blessed-contrib and the Go library termui.

  95. 98

    FTXUI

    10.8KArthurSonzogni/FTXUI · C++

    FTXUI is a simple cross-platform C++ library for building terminal user interfaces — full-screen text apps with colors, layout, widgets, and keyboard and mouse input.

  96. 99

    git-bug

    10.8Kgit-bug/git-bug · Go

    git-bug is a distributed, offline-first bug tracker that lives inside your git repository: issues, comments and identities are embedded in the repo itself and sync through ordinary git pushes and pulls.

  97. 100

    wuzz

    10.7Kasciimoo/wuzz · Go

    Wuzz is an interactive command-line tool for inspecting and tweaking HTTP requests and responses in a terminal UI.

Showing the 100 most-starred of 203. See every one in the catalog.

Often tagged together