Build an interactive command-line tool in Go with a custom layout, such as a text editor, dashboard, or menu system.
Create a terminal-based game like Tetris or Snake that redraws the screen in response to keyboard input.
Display a live-updating terminal dashboard that positions text and numbers in specific screen locations.
Build a hex editor or file browser that runs entirely in the terminal without any graphical UI.
The library is no longer actively maintained, consider a maintained alternative if starting a new project.
Termbox-go is a Go library for building text-based user interfaces that run in a terminal window. Rather than rendering graphical buttons and windows, it works with the character grid of a terminal, letting you place text, colors, and simple shapes in specific positions on screen and respond to keyboard input. The goal is a minimal, consistent abstraction that works the same way across Linux, macOS, and Windows. The library was designed around a simple idea: find the smallest set of features that all major terminals support, and expose only those. This makes the API small and relatively easy to learn. Developers have used it to build tools like text editors, terminal dashboards, games like Tetris and Snake, a hex editor, a stock market tracker, a Docker container manager, and various interactive command-line utilities. The author notes in the README that the library is no longer actively maintained and suggests that people looking for a well-maintained alternative for terminal interfaces consider a different library in the same space. That said, the library still functions, and the author continues to use it personally in a text editor project called godit. Installation follows the standard Go package pattern: one command fetches and installs the library. The repository includes a collection of demo programs in a folder called _demos that show how to handle keyboard events, draw to the screen, and build simple interactive apps. These can be run directly with the standard Go toolchain to see what the library does. This is a developer tool with no graphical interface of its own. Its audience is Go programmers who want to build command-line applications with interactive layouts, and who want a lightweight, dependency-free starting point.
← nsf on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.