Skip to content

blessed-contrib vs termui

Which should you use? A side-by-side look at what each one does, who it suits, what it costs, how hard it is to set up, and where each falls short.

blessed-contrib

Open source · MIT

A JavaScript library for building charts, gauges, and tables inside terminal dashboards.

termui

Open source · MIT

A Go library for building colorful terminal dashboards with charts, tables and lists.

The short answer

Choose blessed-contrib if you need…

  • Developers who want a monitoring or status dashboard that runs in a terminal
  • Engineers working on remote servers over SSH who need visual readouts without a browser
  • Node.js developers already comfortable with blessed or terminal UI code

Choose termui if you need…

  • Go developers who want to build a terminal monitoring dashboard
  • Programmers who need prebuilt charts, tables or gauges in a terminal app
  • Developers who want to create custom terminal widgets in Go
  • Developers who want keyboard and mouse events handled in a text UI

Side-by-side

blessed-contribtermui
TypeLibraryLibrary
PriceFree and open sourceFree and open source
LicenceMITMIT
GitHub stars15.8k13.6k
Setup difficultyIntermediateIntermediate
How you get itInstall with a package managerInstall with a package manager
Main languageJavaScriptGo
Last code update6 months ago16 months ago

What each one is

blessed-contrib

blessed-contrib is a JavaScript library that extends the blessed terminal UI toolkit with extra widgets such as line charts, bar charts, maps, gauges, donuts, logs, and tables. It lets developers build dashboards that run inside a text terminal, including over SSH. The README shows it being installed alongside the blessed package as a peer dependency.

termui

termui is a Go library for building dashboards that run inside a terminal window. It provides ready-made widgets such as charts, gauges, tables, lists and paragraphs, and lets you position them in a grid or at fixed coordinates. It is built on termbox-go and is meant for programmers who want to show live information in a text-based interface.

Best for

blessed-contrib

  • Developers who want a monitoring or status dashboard that runs in a terminal
  • Engineers working on remote servers over SSH who need visual readouts without a browser
  • Node.js developers already comfortable with blessed or terminal UI code

termui

  • Go developers who want to build a terminal monitoring dashboard
  • Programmers who need prebuilt charts, tables or gauges in a terminal app
  • Developers who want to create custom terminal widgets in Go
  • Developers who want keyboard and mouse events handled in a text UI

Strengths

blessed-contrib

  • Works in plain terminals and over SSH, as the README states
  • Builds on the established blessed library and offers many ready widgets
  • Includes runnable examples such as examples/dashboard.js

termui

  • Includes many common widgets such as charts, tables, lists and trees
  • Supports keyboard, mouse and terminal resize events
  • Documented examples are provided in the repository for each widget

Not ideal for

blessed-contrib

  • People who want a ready-made dashboard with no coding, since it is a library you must write code against
  • Projects needing graphical browser-based charts, because output is ASCII/ANSI art in a terminal
  • Users on Windows who are unwilling to follow the extra prerequisites the README links to

termui

  • People who just want a ready-made dashboard without writing Go code, because termui is a library rather than a finished program
  • Projects that need actively maintained updates on a fixed schedule, because the README says update frequency may be irregular and the maintainer is looking for help
  • Teams that cannot use Go 1.15 or newer, since the README states that is the compatibility target

Trade-offs

blessed-contrib

  • Requires writing JavaScript code; there is no standalone dashboard app
  • Windows use needs extra setup described in an external blog post
  • Visual output is limited to what terminal characters can draw

termui

  • The README says maintenance is irregular and the author is seeking maintainers
  • Requires writing Go code; there is no standalone dashboard to run directly
  • Relies on termbox-go, so behavior depends on that underlying layer

Getting started

blessed-contrib

Install the library and its blessed peer dependency

npm install blessed blessed-contrib
Step-by-step guide: how to use blessed-contrib

termui

Add to a Go project (the README says Go modules manage imports automatically)

go get github.com/gizak/termui/v3
Step-by-step guide: how to use termui

Frequently asked questions

What is the difference between blessed-contrib and termui?

blessed-contrib: A JavaScript library for building charts, gauges, and tables inside terminal dashboards. termui: A Go library for building colorful terminal dashboards with charts, tables and lists. blessed-contrib suits developers who want a monitoring or status dashboard that runs in a terminal, while termui suits go developers who want to build a terminal monitoring dashboard.

Are blessed-contrib and termui free?

blessed-contrib: Free and open source. termui: Free and open source.

Is blessed-contrib or termui more popular?

blessed-contrib has more GitHub stars (15.8k) than termui (13.6k). Popularity isn't the same as fit — check which one matches your use case above.

What are other alternatives to blessed-contrib and termui?

Other options people compare them with include Ink, tview.

Keep comparing

Built from our catalogue entries for both products: open-source details come from each project's README (AI-assisted, refreshed weekly) and GitHub data; AI-tool details are editorial. Spotted something wrong? Let us know from either product's page.