termbox-go alternatives and similar packages
Based on the "Advanced Console UIs" category.
Alternatively, view termbox-go alternatives based on common mentions on social networks and blogs.
-
Rich Interactive Widgets for Terminal UIs
Terminal UI library with rich, interactive widgets — written in Golang -
pterm
✨ #PTerm is a modern Go module to easily beautify console output. Featuring charts, progressbars, tables, trees, text input, select menus and much more 🚀 It's completely configurable and 100% cross-platform compatible. -
tcell
Tcell is an alternate terminal package, similar in some ways to termbox, but better in others. -
asciigraph
Go package to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies. -
termtables
DISCONTINUED. A Go port of the Ruby library terminal-tables for simple ASCII table generation as well as providing markdown and HTML output -
chalk
Intuitive package for prettifying terminal/console output. http://godoc.org/github.com/ttacon/chalk -
GCli
🖥 Go CLI application, tool library, running CLI commands, support console color, user interaction, progress display, data formatting display, generate bash/zsh completion add more features. Go的命令行应用,工具库,运行CLI命令,支持命令行色彩,用户交互,进度显示,数据格式化显示,生成bash/zsh命令补全脚本 -
yacspin
Yet Another CLi Spinner; providing over 80 easy to use and customizable terminal spinners for multiple OSes -
ctc
Console Text Colors - The non-invasive cross-platform terminal color library does not need to modify the Print method -
crab-config-files-templating
Dynamic configuration file templating tool for kubernetes manifest or general configuration files
InfluxDB high-performance time series database

Do you think we are missing an alternative of termbox-go or a related project?
README
IMPORTANT
This library is somewhat not maintained anymore. But I'm glad that it did what I wanted the most. It moved people away from "ncurses" mindset and these days we see both re-implementations of termbox API in various languages and even possibly better libs with similar API design. If you're looking for a Go lib that provides terminal-based user interface facilities, I've heard that gdamore/tcell is good (never used it myself). Also for more complicated interfaces and/or computer games I recommend you to consider using HTML-based UI. Having said that, termbox still somewhat works. In fact I'm writing this line of text right now in godit (which is a text editor written using termbox-go). So, be aware. Good luck and have a nice day.
Termbox
Termbox is a library that provides a minimalistic API which allows the programmer to write text-based user interfaces. The library is crossplatform and has both terminal-based implementations on *nix operating systems and a winapi console based implementation for windows operating systems. The basic idea is an abstraction of the greatest common subset of features available on all major terminals and other terminal-like APIs in a minimalistic fashion. Small API means it is easy to implement, test, maintain and learn it, that's what makes the termbox a distinct library in its area.
Installation
Install and update this go package with go get -u github.com/nsf/termbox-go
Examples
For examples of what can be done take a look at various examples in the _demos
directory. You can try them with go run: go run _demos/keyboard.go
There are also some interesting projects using termbox-go:
- godit is an emacsish lightweight text editor written using termbox.
- gotetris is an implementation of Tetris.
- sokoban-go is an implementation of sokoban game.
- hecate is a hex editor designed by Satan.
- httopd is top for httpd logs.
- mop is stock market tracker for hackers.
- termui is a terminal dashboard.
- termloop is a terminal game engine.
- xterm-color-chart is a XTerm 256 color chart.
- gocui is a minimalist Go library aimed at creating console user interfaces.
- dry is an interactive cli to manage Docker containers.
- pxl displays images in the terminal.
- snake-game is an implementation of the Snake game.
- gone is a CLI pomodoro® timer.
- Spoof.go controllable movement spoofing from the cli.
- rat lets you compose shell commands to build terminal applications.
- httplab An interactive web server.
- wot Wait time during command is completed.
- 2048-go is 2048 in Go.
- jv helps you view JSON on the command-line.
- pinger helps you to monitor numerous hosts using ICMP ECHO_REQUEST.
- vixl44 lets you create pixel art inside your terminal using vim movements.
- zterm is a typing game inspired by http://zty.pe/.
- gotypist is a fun touch-typing tutor following Steve Yegge's method.
- cointop is an interactive terminal based UI application for tracking cryptocurrencies.
- pexpo is a terminal sending ping tool written in Go.
- jid is an interactive JSON drill down tool using filtering queries like jq.
- nonograminGo is a nonogram (aka. picross) in Go.
- tower-of-go is a tiny maze game that runs on the terminal.