
blessed-contrib
A JavaScript library for building charts, gauges, and tables inside terminal dashboards.
- Stars
- 15.8k
- Forks
- 831
- Licence
- MIT
- Language
- JavaScript
- Last update
- 6 months ago
- Type
- Library
What it is
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.
- Show a live line chart of server metrics in a terminal window
- Display a bar chart of utilization values across several servers
- Show progress or storage levels with gauges and an LCD-style display
- Stream log lines into a rolling log panel
- Render a marker on a world map in the terminal
Great for
- 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
Not ideal for
- 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
How to get it
- 1
Install with a package manager
You'll need: Node.js LTS (README asks for the latest stable LTS version) · npm
Install the library and its blessed peer dependency
npm install blessed blessed-contrib - 2
Run it
- Install Node.js LTS and run npm install blessed blessed-contrib in your project
- Create a script that requires blessed and blessed-contrib and creates a screen
- Append a widget such as contrib.line to the screen and call setData with your data
- Call screen.render() and run the script with node
- 3
Get the most out of it
- Use the layout option to arrange several widgets on one dashboard, as the README suggests
- Start from examples/dashboard.js to see a full working dashboard
- Use the stacked bar, stacked gauge, and donut widgets to show multi-part values
- Pair with the WOPR project mentioned in the README for terminal reports and infographics
Downloads
Strengths
- 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
Trade-offs
- 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
How it compares
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| blessed-contrib (this) | 15.8k | Library | intermediate | 6 months ago | Developers who want a monitoring or status dashboard that runs in a terminal |
| ink | 40.2k | Library | intermediate | 5 days ago | JavaScript or TypeScript developers who already know React |
Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.