3.0 KiB

cview - Terminal-based user interface toolkit

GoDoc Donate

This package is a fork of tview. See for more information.


ssh -p 20000

Recording of presentation demo


Available widgets:

  • Input forms (including input/password fields, drop-down selections, checkboxes, and buttons)
  • Navigable multi-color text views
  • Selectable lists with context menus
  • Modal dialogs
  • Horizontal and vertical progress bars
  • Grid, Flexbox and tabbed panel layouts
  • Sophisticated navigable table views
  • Flexible tree views
  • Draggable and resizable windows
  • An application wrapper

Widgets may be customized and extended to suit any application.

Mouse support is available.


A list of applications powered by cview is available via


go get

Hello World

This basic example creates a TextView titled "Hello, World!" and displays it in your terminal:

package main

import (

func main() {
	app := cview.NewApplication()

	tv := cview.NewTextView()
	tv.SetTitle("Hello, world!")
	tv.SetText("Lorem ipsum dolor sit amet")
	app.SetRoot(tv, true)
	if err := app.Run(); err != nil {

Examples are available via godoc and in the demos directory.

For a presentation highlighting the features of this package, compile and run the program in the demos/presentation directory.


Package documentation is available via godoc.

An introduction tutorial is also available.


This package is based on (and its dependencies) and

Support describes how to share issues, suggestions and patches (pull requests).