mirror of
https://github.com/rothgar/awesome-tuis.git
synced 2025-01-15 03:41:11 +01:00
889fced1fb
Turbo is an experimental text editor for the terminal, based on the Scintilla code editing component by Neil Hodgson and the Turbo Vision application framework.
168 lines
13 KiB
Markdown
168 lines
13 KiB
Markdown
# Awesome TUIs
|
|
|
|
List of projects that provide terminal user interfaces
|
|
|
|
## Table of Contents
|
|
|
|
- [Dashboards](#dashboards)
|
|
- [Development](#development)
|
|
- [Games](#games)
|
|
- [Libraries](#libraries)
|
|
- [Messaging](#messaging)
|
|
- [Miscellaneous](#miscellaneous)
|
|
- [Multimedia](#multimedia)
|
|
- [Productivity](#productivity)
|
|
- [Web](#web)
|
|
|
|
## <a name="dashboards"></a>Dashboards
|
|
|
|
- [bashtop](https://github.com/aristocratos/bashtop) Resource manager written in bash
|
|
- [chkservice](https://github.com/linuxenko/chkservice) Systemd units manager with ncurses, terminal interface
|
|
- [cointop](https://github.com/miguelmota/cointop) The fastest and most interactive terminal based UI application for tracking cryptocurrencies
|
|
- [ctop](https://github.com/bcicen/ctop) Top-like interface for container metrics
|
|
- [dockly](https://github.com/lirantal/dockly) Immersive terminal interface for managing docker containers and services
|
|
- [dry](https://github.com/moncho/dry) A Docker manager for the terminal
|
|
- [fff](https://github.com/dylanaraps/fff) A simple file manager written in bash.
|
|
- [Glances](https://github.com/nicolargo/glances) Glances an Eye on your system. A top/htop alternative.
|
|
- [Glow](https://github.com/charmbracelet/glow) Render markdown on the CLI, with pizzazz!
|
|
- [Goaccess](https://github.com/allinurl/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](https://github.com/xxxserxxx/gotop) A terminal based graphical activity monitor inspired by gtop and vtop
|
|
- [Grafterm](https://github.com/slok/grafterm) Metrics dashboards on terminal, a Grafana inspired terminal version
|
|
- [htop](https://github.com/hishamhm/htop) Interactive text-mode process viewer for Unix systems. It aims to be a better 'top'
|
|
- [htui](https://github.com/PierreKieffer/htui) Heroku Terminal User Interface
|
|
- [k9s](https://github.com/derailed/k9s) TUI for managing a Kubernetes cluster
|
|
- [kmon](https://github.com/orhun/kmon) Linux Kernel Manager and Activity Monitor
|
|
- [lazydocker](https://github.com/jesseduffield/lazydocker) The lazier way to manage everything docker
|
|
- [sen](https://github.com/TomasTomecek/sen) Terminal User Interface for docker engine
|
|
- [sysz](https://github.com/joehillen/sysz) An fzf terminal UI for systemctl
|
|
- [tdash](https://github.com/jessfraz/tdash) A terminal dashboard with stats from Google Analytics, GitHub, Travis CI, and Jenkins. Very much built specific to me
|
|
- [TermUI](https://github.com/gizak/termui) Golang terminal dashboard
|
|
- [trek](https://github.com/franckverrot/trek) ncurses explorer for Hashicorp Nomad clusters
|
|
- [WTF](https://github.com/senorprogrammer/wtf) The personal information dashboard for your terminal.
|
|
|
|
## <a name="development"></a>Development
|
|
|
|
- [amp](https://github.com/jmacdonald/amp) A complete text editor for your terminal
|
|
- [austin-tui](https://github.com/P403n1x87/austin-tui) The top-like text-based user interface for Austin
|
|
- [gitui](https://github.com/extrawurst/gitui) blazing fast terminal-ui for git written in rust
|
|
- [grv](https://github.com/rgburke/grv) Terminal interface for viewing git repositories
|
|
- [lazygit](https://github.com/jesseduffield/lazygit) Simple terminal UI for git commands
|
|
- [micro](https://github.com/zyedidia/micro) A modern and intuitive terminal-based text editor
|
|
- [mitmproxy](https://www.mitmproxy.org) A free and open source interactive HTTPS proxy
|
|
- [pyautogit](https://github.com/jwlodek/pyautogit) A terminal UI for managing git repositories, written using [py_cui](https://github.com/jwlodek/py_cui)
|
|
- [pudb](https://github.com/inducer/pudb) A console-based visual debugger for Python
|
|
- [slap](https://github.com/slap-editor/slap) Sublime-like terminal-based text editor
|
|
- [sls-dev-tools](https://github.com/Theodo-UK/sls-dev-tools) Dev Tools for the Serverless World
|
|
- [tig](https://github.com/jonas/tig) Text-mode interface for git
|
|
- [turbo](https://github.com/magiblot/turbo) An experimental text editor for the terminal, based on Scintilla and Turbo Vision
|
|
- [vctui](https://github.com/thebsdbox/vctui) Console interface for vCenter
|
|
|
|
## <a name="games"></a>Games
|
|
|
|
- [2048-cli](https://github.com/tiehuis/2048-cli) The game 2048 for your Linux terminal
|
|
- [bastet](https://github.com/fph/bastet) Evil falling block game
|
|
- [Gameboy Emulator](https://github.com/gabrielrcouto/php-terminal-gameboy-emulator) A PHP Terminal GameBoy Emulator
|
|
- [Greed](https://gitlab.com/esr/greed) A game of consumption. Eat as much as you can before munching yourself into a corner!
|
|
- [moon-buggy](https://github.com/seehuhn/moon-buggy) Drive some car across the moon
|
|
- [MyMan](https://sourceforge.net/projects/myman/) MyMan is a video game for color and monochrome text terminals in the genre of Namco's Pac-Man
|
|
- [NetHack](https://github.com/NetHack/NetHack) Dungeon exploration game
|
|
- [nInvaders](http://ninvaders.sourceforge.net/) Space Invaders
|
|
- [nSnake](https://github.com/alexdantas/nSnake) The classic snake game with textual interface
|
|
- [nudoku](https://github.com/jubalh/nudoku) ncurses based sudoku game
|
|
- [steam-tui](https://github.com/dmadisetti/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.
|
|
- [terminal-phase](https://gitlab.com/dustyweb/terminal-phase) Space shooter game that runs in your terminal!
|
|
- [tinytetris](https://github.com/taylorconor/tinytetris) 80x23 terminal tetris!
|
|
|
|
## <a name="libraries"></a>Libraries
|
|
|
|
- [blessings](https://github.com/erikrose/blessings) A Python wrapper lib for ncurses that makes your code pretty to look at, complete with extensions known as [bubbles](https://github.com/charmbracelet/bubbles)
|
|
- [bubbletea](https://github.com/charmbracelet/bubbletea) A Go framework based on Elm to build functional and stateful TUI apps
|
|
- [FTXUI](https://github.com/ArthurSonzogni/FTXUI) 💻 C++ Functional Terminal User Interface. ❤️
|
|
- [gocui](https://github.com/jroimartin/gocui) Minimalist Go package aimed at creating Console User Interfaces
|
|
- [ncurses](https://www.gnu.org/software/ncurses/)
|
|
- [notcurses](https://github.com/dankamongmen/notcurses) blingful character graphics/TUI library. definitely not curses
|
|
- [pterm](https://github.com/pterm/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](https://github.com/jwlodek/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.
|
|
- [tui-go](https://github.com/marcusolsson/tui-go) A UI library for terminal applications (deprecated)
|
|
- [tui-rs](https://github.com/fdehau/tui-rs) Terminal user interfaces and dashboards using Rust
|
|
- [Terminal.Gui](https://github.com/migueldeicaza/gui.cs) Cross Platform Terminal GUI toolkit for .NET
|
|
|
|
## <a name="messaging"></a>Messaging
|
|
|
|
- [gord](https://github.com/yellowsink/gord) TUI discord client. updated fork of the now-outdated cordless.
|
|
- [Mutt](https://gitlab.com/muttmua/mutt) Email client
|
|
- [sclack](https://github.com/haskellcamargo/sclack) Slack terminal client
|
|
- [siggo](https://github.com/derricw/siggo) A terminal ui for signal-cli, written in Go
|
|
- [Slack-term](https://github.com/erroneousboat/slack-term) Slack client for your terminal
|
|
- [TelegramTUI](https://github.com/bad-day/TelegramTUI) Telegram client
|
|
- [Weechat](https://weechat.org/) Extensible chat client
|
|
|
|
## <a name="miscellaneous"></a>Miscellaneous
|
|
|
|
- [diary](https://github.com/actuday6418/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](https://github.com/wagoodman/dive) A tool for exploring each layer in a docker image
|
|
- [gif-for-cli](https://github.com/google/gif-for-cli) Convert a gif into ASCII
|
|
- [gobang](https://github.com/TaKO8Ki/gobang) A cross-platform TUI database management tool written in Rust
|
|
- [gpg-tui](https://github.com/orhun/gpg-tui) A terminal user interface for GnuPG
|
|
- [jrnl](https://jrnl.sh/) Collect your thoughts and notes without leaving the command line. human-friendly. future-proof. secure.
|
|
- [neoss](https://github.com/PabloLec/neoss) Socket statistics visualization and explanation tool for Unix systems.
|
|
- [nmtui](https://developer.gnome.org/NetworkManager/stable/nmtui.html) ncurses network manager
|
|
- [oha](https://github.com/hatoo/oha) HTTP load generator
|
|
- [recoverpy](https://github.com/PabloLec/recoverpy) A TUI to recover overwritten or deleted data.
|
|
- [termdbms](https://github.com/mathaou/termdbms) A TUI for viewing and editing database files.
|
|
- [termshark](https://github.com/gcla/termshark) Terminal UI for tshark
|
|
- [ttyper](https://github.com/max-niederman/ttyper) Terminal-based typing test
|
|
- [wego](https://github.com/schachmat/wego) Weather app
|
|
- [wttr.in](https://github.com/chubin/wttr.in) The right way to check the weather
|
|
- [xplr](https://github.com/sayanarijit/xplr) A hackable, minimal, fast TUI file explorer, stealing ideas from nnn and fzf.
|
|
|
|
## <a name="multimedia"></a>Multimedia
|
|
|
|
- [cmdpxl](https://github.com/knosmos/cmdpxl) Totally practical command-line image editor
|
|
- [mps-youtube](https://github.com/mps-youtube/mps-youtube) Terminal based YouTube player and downloader
|
|
- [roku-cli](https://github.com/winsbe01/roku-cli) A command line TUI remote for Roku
|
|
- [soundcloud2000](https://github.com/grobie/soundcloud2000) A terminal client for soundcloud
|
|
- [spotify-tui](https://github.com/Rigellute/spotify-tui) Spotify for the terminal written in Rust
|
|
- [spotui](https://github.com/ceuk/spotui) Spotify client written in Python
|
|
- [timg](https://github.com/hzeller/timg) A terminal image viewer
|
|
- [tizonia-openmax-il](https://github.com/tizonia/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
|
|
|
|
## <a name="productivity"></a>Productivity
|
|
|
|
- [goful](https://github.com/anmitsu/goful) a powerful TUI file manager written in Go
|
|
- [khal](https://github.com/pimutils/khal) A standards based CLI calendar program, able to synchronize with CalDAV servers
|
|
- [patat](https://github.com/jaspervdj/patat) Terminal-based presentations using Pandoc
|
|
- [ranger](https://github.com/ranger/ranger) A VIM-inspired filemanager for the console
|
|
- [sc-im](https://github.com/andmarti1424/sc-im) An ncurses spreadsheet program for terminal. Reignited version of sc
|
|
- [taskline](https://github.com/perryrh0dan/taskline) Tasks, boards & notes for the command-line habitat
|
|
- [taswarrior-tui](https://github.com/kdheepak/taskwarrior-tui) A Terminal User Interface for Taskwarrior
|
|
- [tmux](https://github.com/tmux/tmux) Terminal multiplexer
|
|
- [todoman](https://github.com/pimutils/todoman) A simple, standards-based (ics, DAV), cli task-manager
|
|
- [topydo](https://github.com/topydo/topydo) A powerful todo list application using the todo.txt format
|
|
- [TUI_ProjectManager](https://github.com/NicoDblc/TUI_ProjectManager) A simple project-based todo list written in Rust
|
|
- [Visidata](https://github.com/saulpw/visidata) A terminal spreadsheet multitool for discovering and arranging data
|
|
- [zelliji](https://github.com/zellij-org/zellij) A terminal workspace with batteries included
|
|
|
|
## <a name="web"></a>Web
|
|
|
|
- [browsh](https://github.com/browsh-org/browsh) A fully-modern text-based browser, rendering to TTY and browsers
|
|
- [googlit](https://github.com/peterjschroeder/googlit) A TUI frontend to [googler](https://github.com/jarun/googler)
|
|
- [hackernews-TUI](https://github.com/aome510/hackernews-TUI) A Terminal UI to browse Hacker News
|
|
- [haxor-news](https://github.com/donnemartin/haxor-news) Browse Hacker News like a haxor: A Hacker News command line interface (CLI)
|
|
- [LYNX](https://lynx.invisible-island.net/) A text based Terminal browser
|
|
- [newsboat](https://github.com/newsboat/newsboat) An RSS/Atom feed reader for the text console
|
|
- [Rainbowstream](https://github.com/orakaro/rainbowstream) A smart and nice Twitter client on terminal written in Python
|
|
- [rtv](https://github.com/michael-lazar/rtv) Browse Reddit from your terminal
|
|
- [tblogs](https://github.com/ezeoleaf/tblogs) Read and browse development blogs from your terminal
|
|
|
|
---
|
|
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](https://awesomeopensource.com/projects/tui) page.
|
|
|
|
Looking for lightweight but not necessarily TUI? check out mayfrost's [alternatives list](https://github.com/mayfrost/guides/blob/master/ALTERNATIVES.md)!
|
|
|
|
Enjoy Vim keybinds and don't want to learn new ones? check out the [Big Pile of Vim-like](https://vim.reversed.top)
|
|
|
|
First-hand reviews for a lot of these tools and many, many more at k.mandla's [Inconsolation blog](https://inconsolation.wordpress.com/index/). The site also has a "surprise me with a random tool" link!
|
|
|
|
[Tim's blog](http://tim.thechases.com/posts/cli/software-for-a-command-line-world/) cover more tools for no X, over ssh, and all CLI (not necessarily TUI tho).
|