List of projects that provide terminal user interfaces
Go to file
2022-03-17 22:35:13 -07:00
README.md Add image-sorter (#69) 2022-03-17 22:35:13 -07:00

Awesome TUIs

List of projects that provide terminal user interfaces

Table of Contents

Dashboards

  • bashtop Resource manager written in bash
  • below A time traveling resource monitor for modern Linux systems
  • bottom A customizable graphical process/system monitor for the terminal.
  • btop++ Resource monitor with extras
  • chkservice Systemd units manager with ncurses, terminal interface
  • cointop The fastest and most interactive terminal based UI application for tracking cryptocurrencies
  • ctop Top-like interface for container metrics
  • damon TUI interface for Hashicorp Nomad
  • dockly Immersive terminal interface for managing docker containers and services
  • dry A Docker manager for the terminal
  • fff A simple file manager written in bash.
  • nnn n³ The unorthodox terminal file manager
  • Glances Glances an Eye on your system. A top/htop alternative.
  • Glow Render markdown on the CLI, with pizzazz!
  • Goaccess GoAccess is a real-time web log analyzer and interactive viewer that runs in a terminal in nix systems or through your browser.
  • gotop A terminal based graphical activity monitor inspired by gtop and vtop
  • Grafterm Metrics dashboards on terminal, a Grafana inspired terminal version
  • htop Interactive text-mode process viewer for Unix systems. It aims to be a better 'top'
  • htui Heroku Terminal User Interface
  • k9s TUI for managing a Kubernetes cluster
  • kmon Linux Kernel Manager and Activity Monitor
  • lazydocker The lazier way to manage everything docker
  • sen Terminal User Interface for docker engine
  • sysz An fzf terminal UI for systemctl
  • tdash A terminal dashboard with stats from Google Analytics, GitHub, Travis CI, and Jenkins. Very much built specific to me
  • TermUI Golang terminal dashboard
  • trek ncurses explorer for Hashicorp Nomad clusters
  • WTF The personal information dashboard for your terminal.
  • zenith In terminal graphical metrics for your *nix system written in Rust

Development

  • amp A complete text editor for your terminal
  • austin-tui The top-like text-based user interface for Austin
  • delta A syntax-highlighting pager for git, diff, and grep output.
  • gitui blazing fast terminal-ui for git written in rust
  • grv Terminal interface for viewing git repositories
  • lazygit Simple terminal UI for git commands
  • micro A modern and intuitive terminal-based text editor
  • mitmproxy A free and open source interactive HTTPS proxy
  • pyautogit A terminal UI for managing git repositories, written using py_cui
  • pudb A console-based visual debugger for Python
  • slap Sublime-like terminal-based text editor
  • sls-dev-tools Dev Tools for the Serverless World
  • tig Text-mode interface for git
  • turbo An experimental text editor for the terminal, based on Scintilla and Turbo Vision
  • vctui Console interface for vCenter

Games

  • 2048-cli The game 2048 for your Linux terminal
  • bastet Evil falling block game
  • botany Virtual plant buddy
  • cbonsai A bonsai tree generator
  • clidle Play Wordle in your terminal. Also works over SSH!
  • Gameboy Emulator A PHP Terminal GameBoy Emulator
  • go-life Terminal based Conway's Game of Life
  • Greed A game of consumption. Eat as much as you can before munching yourself into a corner!
  • moon-buggy Drive some car across the moon
  • MyMan MyMan is a video game for color and monochrome text terminals in the genre of Namco's Pac-Man
  • NetHack Dungeon exploration game
  • nInvaders Space Invaders
  • nSnake The classic snake game with textual interface
  • nudoku ncurses based sudoku game
  • steam-tui Just a simple TUI client for steamcmd. Allows for the graphical launching, updating, and downloading of steam games through a simple terminal client.
  • sudoku-rs Sudoku built with tui-rs
  • terminal-phase Space shooter game that runs in your terminal!
  • tinytetris 80x23 terminal tetris!

Libraries

  • blessings A Python wrapper lib for ncurses that makes your code pretty to look at, complete with extensions known as bubbles
  • bubbletea A Go framework based on Elm to build functional and stateful TUI apps
  • FINAL CUT Library for creating terminal applications with text-based widgets
  • FTXUI 💻 C++ Functional Terminal User Interface. ❤️
  • gocui Minimalist Go package aimed at creating Console User Interfaces
  • imtui An immediate mode text-based user interface library, supporting 256 ANSI colors and mouse/keyboard input.
  • ncurses
  • notcurses blingful character graphics/TUI library. definitely not curses
  • pterm A modern go module to beautify console output. Featuring charts, progressbars, tables, trees, and much more! It's completely configurable and 100% cross-platform compatible.
  • py_cui Python library aimed at making widget based TUI/CUI interfaces as simple as possible. Supports standard widgets and popups like menus, textboxes, forms, file explorers etc.
  • pytermgui A simple yet powerful TUI framework for your Python (3.7+) applications.
  • Python Prompt Toolkit Library for building powerful interactive command line applications in Python
  • Rich is a Python library for rich text and beautiful formatting in the terminal.
  • tcell Tcell is an alternate terminal package, similar in some ways to termbox, but better in others.
  • textual is a TUI (Text User Interface) framework for Python inspired by modern web development.
  • tui-go A UI library for terminal applications (deprecated)
  • tui-rs Terminal user interfaces and dashboards using Rust
  • Terminal.Gui Cross Platform Terminal GUI toolkit for .NET
  • tview Terminal UI library with rich, interactive widgets — written in Golang
  • tvision A modern port of Turbo Vision 2.0, cross-platform and Unicode support.

Messaging

  • aerc Email client
  • Alpine Email client. Fork of Pine by University of Washington.
  • gomuks Matrix client
  • gord TUI discord client. updated fork of the now-outdated cordless.
  • matterhorn A Mattermost terminal client.
  • mcabber - XMPP (Jabber) client
  • Mutt Email client
  • sclack Slack terminal client
  • scli A simple terminal user interface for signal messenger
  • siggo A terminal ui for signal-cli, written in Go
  • Slack-term Slack client for your terminal
  • sup A curses threads-with-tags style email client
  • toot Mastodon CLI & TUI
  • Weechat Extensible chat client

Miscellaneous

  • asciiMol Curses based ASCII molecule viewer for linux terminals.
  • adbtuifm A TUI file manager for Android, based on the Android Debug Bridge(ADB).
  • diary A diary app written in Rust that encrypts both text and file data, and can decrypt and build a rich HTML representation of your diary when required.
  • dive A tool for exploring each layer in a docker image
  • emu2 A simple DOS emulator for the Linux text console, supporting basic DOS system calls and console I/O.
  • gif-for-cli Convert a gif into ASCII
  • gobang A cross-platform TUI database management tool written in Rust
  • gpg-tui A terminal user interface for GnuPG
  • jrnl Collect your thoughts and notes without leaving the command line. human-friendly. future-proof. secure.
  • mapscii Braille & ASCII world map renderer for your console
  • neoss Socket statistics visualization and explanation tool for Unix systems.
  • nmtui ncurses network manager
  • oha HTTP load generator
  • profanity A cross-platfrom XMPP client.
  • ncdu disk usage analyzer with an ncurses interface
  • recoverpy A TUI to recover overwritten or deleted data.
  • rocket.term Text based chat client for the Rocket.chat messaging solution.
  • tcpterm tcpterm is a packet visualizer in TUI.
  • termdbms A TUI for viewing and editing database files.
  • termshark Terminal UI for tshark
  • ttyper Terminal-based typing test
  • vifm A TUI file manager with vi-keybindings and other vim like behaviour.
  • wego Weather app
  • wavemon A wireless device monitoring application
  • wttr.in The right way to check the weather
  • xplr A hackable, minimal, fast TUI file explorer, stealing ideas from nnn and fzf.

Multimedia

  • chafa A powerful utility that converts image data, including animated GIFs, into graphics formats or ANSI/Unicode character art suitable for display in a terminal.
  • cmdpxl Totally practical command-line image editor
  • image-sorter Terminal user interface for sorting images using key bindings written in Rust
  • invidtui A TUI Invidious client for Windows, Linux and MacOS, that fetches and plays audio/video from an invidious instance. Supports viewing and playing from playlists and channels as well.
  • mps-youtube Terminal based YouTube player and downloader
  • roku-cli A command line TUI remote for Roku
  • soundcloud2000 A terminal client for soundcloud
  • spotify-tui Spotify for the terminal written in Rust
  • spotui Spotify client written in Python
  • timg A terminal image viewer
  • tizonia-openmax-il Command-line cloud music player for Linux with support for Spotify, Google Play Music, YouTube, SoundCloud, Dirble, Plex servers and Chromecast devices
  • ytui-music Listen to music from youtube. Configurable, minimal, lightweight, private & beautiful music client.

Productivity

  • goful a powerful TUI file manager written in Go
  • khal A standards based CLI calendar program, able to synchronize with CalDAV servers
  • patat Terminal-based presentations using Pandoc
  • ranger A VIM-inspired filemanager for the console
  • sc-im An ncurses spreadsheet program for terminal. Reignited version of sc
  • taskline Tasks, boards & notes for the command-line habitat
  • taskwarrior-tui A Terminal User Interface for Taskwarrior
  • tmux Terminal multiplexer
  • todoman A simple, standards-based (ics, DAV), cli task-manager
  • topydo A powerful todo list application using the todo.txt format
  • TUI_ProjectManager A simple project-based todo list written in Rust
  • Visidata A terminal spreadsheet multitool for discovering and arranging data
  • zelliji A terminal workspace with batteries included
  • Vifm File manager with Vim bindings and scripting/configuration style

Web

  • browsh A fully-modern text-based browser, rendering to TTY and browsers
  • googlit A TUI frontend to googler
  • hackernews-TUI A Terminal UI to browse Hacker News
  • haxor-news Browse Hacker News like a haxor: A Hacker News command line interface (CLI)
  • LYNX A text based Terminal browser
  • newsboat An RSS/Atom feed reader for the text console
  • Rainbowstream A smart and nice Twitter client on terminal written in Python
  • rtv Browse Reddit from your terminal
  • tblogs Read and browse development blogs from your terminal
  • twterm A full-featured TUI Twitter client
  • w3m A text-mode WWW browser

There's a crazy amount of TUI projects out there, and we can't list them all (though we try!)
For more, see awesome-opensource's TUI Projects page.

Looking for lightweight but not necessarily TUI? check out mayfrost's alternatives list!

Enjoy Vim keybinds and don't want to learn new ones? check out the Big Pile of Vim-like

First-hand reviews for a lot of these tools and many, many more at k.mandla's Inconsolation blog. The site also has a "surprise me with a random tool" link!

Tim's blog cover more tools for no X, over ssh, and all CLI (not necessarily TUI tho).