Favicon of TermUI

TermUI

Cross-platform terminal dashboard library for Go with premade widgets, custom components, and full event handling for keyboard, mouse, and resizing.

TUI appsInactive

TermUI is a cross-platform terminal dashboard and widget library built entirely in Go. It provides developers with a comprehensive toolkit for creating interactive command-line interfaces without the complexity of lower-level terminal manipulation.

Key capabilities include:

  • Premade widgets for common use cases like bar charts, gauges, tables, lists, and sparklines
  • Custom widget creation for specialized needs with full control over appearance and behavior
  • Flexible positioning using either relative grid layouts or absolute coordinates
  • Event handling for keyboard input, mouse interactions, and terminal resizing
  • Styling and colors to create visually appealing terminal interfaces

The library is built on top of termbox-go and draws inspiration from blessed-contrib and tui-rs. It supports Go 1.15 and above, making it compatible with modern Go projects. Installation is straightforward through Go modules, and the library includes comprehensive examples and documentation to help developers get started quickly.

TermUI has been used in production applications including Docker dashboards, system monitoring tools, and Ethereum node monitoring utilities, demonstrating its reliability and versatility for real-world terminal applications.

Features

True color

Media

Pros

4
  • Provides premade widgets for common use cases
  • Allows creation of custom widgets
  • Supports keyboard, mouse, and terminal resizing events
  • Offers relative grid or absolute coordinate positioning for widgets

Cons

1
  • Project maintenance frequency may be inconsistent due to developer availability.

Related tools

Categories:

Share:

  • Stars


    13,576
  • Forks


    816
  • Last commit


    1 year ago
  • First release


    11 years
  • Language


    Go
  • License


    MIT

Quiet lately: No commits in 1 year — this project might not be actively maintained.

Auto-fetched .

Similar to TermUI

Favicon

 

  
 
Favicon

 

  
 
Favicon