Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gizak/termui
Golang terminal dashboard
https://github.com/gizak/termui
Last synced: about 2 months ago
JSON representation
Golang terminal dashboard
- Host: GitHub
- URL: https://github.com/gizak/termui
- Owner: gizak
- License: mit
- Created: 2015-02-03T14:09:27.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2024-01-30T06:40:22.000Z (5 months ago)
- Last Synced: 2024-02-06T23:47:16.404Z (4 months ago)
- Language: Go
- Homepage:
- Size: 5.87 MB
- Stars: 12,816
- Watchers: 285
- Forks: 792
- Open Issues: 98
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Lists
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-stars - termui
- awesome-stars - gizak/termui
- awesome-go-extra - termui - 02-03T14:09:27Z|2022-06-22T19:51:49Z| (Build Automation / Advanced Console UIs)
- awesome-stars - termui
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-stars - termui
- awesome-tuis - TermUI
- awesome-tools - gizak/termui - Golang terminal dashboard (Command Line / Terminal Dashboard)
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). Stars:`13.0K`. (Command Line / Advanced Console UIs)
- go-awesome - termui - 终端仪表盘 (开源类库 / 命令行)
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-stars - gizak/termui - Golang terminal dashboard (Go)
- awesome - gizak/termui - Golang terminal dashboard (Go)
- awesome-github-repos - gizak/termui - Golang terminal dashboard (Go)
- awesome-go-cn - termui - go**实现的,借鉴于[blessed-contrib](https://github.com/yaronn/blessed-contrib)。 [![godoc][D]](https://godoc.org/github.com/gizak/termui) (命令行 / 高级控制台用户界面)
- awesome-starred - termui - Golang terminal dashboard (Go)
- awesome-stars - gizak/termui - Golang terminal dashboard (Go)
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-github-star - termui
- fucking-awesome-go - :octocat: termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). :star: 4740 :fork_and_knife: 216 (Command Line / Advanced Console UIs)
- awesome-go-projects - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-go - termui - go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). | - | - | - | (Command Line / Advanced Console UIs)
- awesome-stars - termui
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-go-with-framework - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-stars - gizak/termui - Golang terminal dashboard (Go)
- awesome-stars - gizak/termui - Golang terminal dashboard (Go)
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-go-cn - termui - go**实现的,借鉴于[blessed-contrib](https://github.com/yaronn/blessed-contrib)。 [![godoc][D]](https://godoc.org/github.com/gizak/termui) (命令行 / 高级控制台用户界面)
- awesome-stars - termui
- awesome-stars - termui
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-stars - gizak/termui - Golang terminal dashboard (Go)
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- my-awesome-starred - gizak/termui - Golang terminal dashboard (Go)
- awesome-stars - gizak/termui - Golang terminal dashboard (Go)
- awesome-stars - gizak/termui - Golang terminal dashboard (Go)
- awesome - termui - Golang terminal dashboard (Go)
- awesome-go - termui - 基于转到终端仪表板**termbox-go** 和灵感祝福-的contrib。 (<span id="命令行-command-line">命令行 Command Line</span> / <span id="高级控制台用户界面-advanced-console-uis">高级控制台用户界面 Advanced Console UIs</span>)
- awesome-go. - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-stars - termui - Golang terminal dashboard (Go)
- awesome-reader - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-go-cn - termui - Go 终端控制面板,基于 **termbox-Go** 并受到了[blessed-contrib](https://github.com/yaronn/blessed-contrib)的启发 (命令行 / 高级控制台界面)
- awesome-star - gizak/termui
- awesome-rust-cn - termui - ci.org/fdehau/tui-rs.svg?branch=master)](https://travis-ci.org/fdehau/tui-rs) (库 Libraries / 命令行 Command-line)
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-stars - termui - Golang terminal dashboard (Go)
- awesome-stars - termui - Golang terminal dashboard (Go)
- repo-1316-awesome-go-cn - termui - go**实现的,借鉴于[blessed-contrib](https://github.com/yaronn/blessed-contrib)。 [![godoc][D]](https://godoc.org/github.com/gizak/termui) (命令行 / 高级控制台用户界面)
- repo-1211-awesome-go-cn - termui - go**实现的,借鉴于[blessed-contrib](https://github.com/yaronn/blessed-contrib)。 [![godoc][D]](https://godoc.org/github.com/gizak/termui) (命令行 / 高级控制台用户界面)
- awesome-stars - termui
- awesome-go - gizak/termui
- awesome-Char - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- Go-awesome - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-stars - termui - Golang terminal dashboard (Go)
- awesome-command-line-apps - termui - Cross-platform, easy-to-compile, and fully-customizable terminal dashboard. (\*nix/\*nux / Presentation)
- awesome-stars - gizak/termui - Golang terminal dashboard (Go)
- my-awesome - gizak/termui - 03 star:13.0k fork:0.8k Golang terminal dashboard (Go)
- awesome-go-stars - termui(stars: 12915) - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- stars - gizak/termui
- awesome-stars - termui
- go-awesome-cn-star - termui - go` 的 `Go` 终端仪表盘,灵感来源于[blessed-contrib](https://github.com/yaronn/blessed-contrib) 。 (11.6k) (高级控制台UI`用于构建控制台应用程序和控制台用户界面的库.`)
- awesome-go-zh - termui - go**实现的,借鉴于[blessed-contrib](https://github.com/yaronn/blessed-contrib)。 [![近一周有更新][G]](https://github.com/gizak/termui) [![godoc][D]](https://godoc.org/github.com/gizak/termui) (命令行 / 高级控制台用户界面)
- awesome-go-handwritten - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-go - termui - Go 終端控制面板,基於 **termbox-Go** 並受到了[blessed-contrib](https://github.com/yaronn/blessed-contrib)的啟發 (命令行 / 高級控制台界面)
- awesome-command-line-apps - termui - Cross-platform, easy-to-compile, and fully-customizable terminal dashboard. (\*nix/\*nux / Presentation)
- my-stars - gizak/termui - Golang terminal dashboard (Go)
- my-awesome-list - termui - Golang terminal dashboard (Programming Languages / Go)
- go-awesome - termui - Terminal Dashboard (Open source library / Command Line)
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-go2 - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome - termui - Golang terminal dashboard (Go)
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). - :arrow_down:299 - :star:5091 (Command Line / Advanced Console UIs)
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-go-with-stars - termui - Go terminal dashboard based on **termbox-go** and inspired by <code> 15426</code> [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-stars - gizak/termui - `★13036` Golang terminal dashboard (Go)
- awesome-go-cn - termui - go**实现的,借鉴于[blessed-contrib](https://github.com/yaronn/blessed-contrib)。 ![star > 5000][Gold] (命令行 / 高级控制台用户界面)
- awesome-go-cn - termui - go 的终端仪表板,并受[blessed-contrib](https://github.com/yaronn/blessed-contrib)启发。 (Go terminal dashboard based on termbox-go and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib).) (命令行 / Advanced Console UIs)
- awesome-go-cn - termui - go` 的 `Go` 终端仪表盘,灵感来源于[blessed-contrib](https://github.com/yaronn/blessed-contrib) 。 (高级控制台UI / 标准 CLI)
- awesome-go - termui - Golang terminal dashboard - ★ 8005 (Command Line)
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-go - termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib). (Command Line / Advanced Console UIs)
- awesome-stars - gizak/termui - Golang terminal dashboard (Go)
- go-awesome - termui - 终端仪表盘 (开源类库 / 命令行)
README
# termui
[
](./_examples/demo.go)
termui is a cross-platform and fully-customizable terminal dashboard and widget library built on top of [termbox-go](https://github.com/nsf/termbox-go). It is inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib) and [tui-rs](https://github.com/fdehau/tui-rs) and written purely in Go.
## Note
Please be aware that due to my fluctuating availability, the frequency of updates to this project may not always follow a consistent schedule. I would like to invite potential maintainers to contribute to this project. If you are interested in becoming a maintainer, please do not hesitate to reach out to me.
## Versions
termui is currently compatible with Go 1.15 (as in go.mod) and above (tracking the Debian's [oldstable](https://wiki.debian.org/DebianReleases)). Please use the version-numbered branch as stable release. The new changes will be pushed to master branch first and then merge to version branch.
## Features
- Several premade widgets for common use cases
- Easily create custom widgets
- Position widgets either in a relative grid or with absolute coordinates
- Keyboard, mouse, and terminal resizing events
- Colors and styling## Installation
### Go modules
It is not necessary to `go get` termui, since Go will automatically manage any imported dependencies for you. Do note that you have to include `/v3` in the import statements as shown in the 'Hello World' example below.
### Dep
Add with `dep ensure -add github.com/gizak/termui`. With Dep, `/v3` should *not* be included in the import statements.
## Hello World
```go
package mainimport (
"log"ui "github.com/gizak/termui/v3"
"github.com/gizak/termui/v3/widgets"
)func main() {
if err := ui.Init(); err != nil {
log.Fatalf("failed to initialize termui: %v", err)
}
defer ui.Close()p := widgets.NewParagraph()
p.Text = "Hello World!"
p.SetRect(0, 0, 25, 5)ui.Render(p)
for e := range ui.PollEvents() {
if e.Type == ui.KeyboardEvent {
break
}
}
}
```## Widgets
- [BarChart](./_examples/barchart.go)
- [Canvas](./_examples/canvas.go) (for drawing braille dots)
- [Gauge](./_examples/gauge.go)
- [Image](./_examples/image.go)
- [List](./_examples/list.go)
- [Tree](./_examples/tree.go)
- [Paragraph](./_examples/paragraph.go)
- [PieChart](./_examples/piechart.go)
- [Plot](./_examples/plot.go) (for scatterplots and linecharts)
- [Sparkline](./_examples/sparkline.go)
- [StackedBarChart](./_examples/stacked_barchart.go)
- [Table](./_examples/table.go)
- [Tabs](./_examples/tabs.go)Run an example with `go run _examples/{example}.go` or run each example consecutively with `make run-examples`.
## Documentation
- [wiki](https://github.com/gizak/termui/wiki)
## Uses
- [dockdash](https://github.com/byrnedo/dockdash)
- [expvarmon](https://github.com/divan/expvarmon)
- [go-ethereum/monitorcmd](https://github.com/ethereum/go-ethereum/blob/master/cmd/geth/monitorcmd.go)
- [go-jira-ui](https://github.com/mikepea/go-jira-ui)
- [gotop](https://github.com/cjbassi/gotop)
- [termeter](https://github.com/atsaki/termeter)## Related Works
- [blessed-contrib](https://github.com/yaronn/blessed-contrib)
- [gocui](https://github.com/jroimartin/gocui)
- [termdash](https://github.com/mum4k/termdash)
- [tui-rs](https://github.com/fdehau/tui-rs)
- [tview](https://github.com/rivo/tview)## License
[MIT](http://opensource.org/licenses/MIT)