Lip Gloss vs tview
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.
Open source · MIT
A Go library for styling and laying out text in terminal user interfaces.
Open source · MIT
A Go library for building interactive terminal user interfaces with ready-made widgets.
The short answer
Choose Lip Gloss if you need…
- Go developers building terminal user interfaces
- Developers who already use Bubble Tea and want consistent styling
- People familiar with CSS who want a similar style model in the terminal
- Anyone printing styled, aligned output from a Go command-line program
Choose tview if you need…
- Go developers building interactive command-line tools with menus, forms, or tables
- Developers who want prebuilt terminal widgets instead of drawing everything by hand
- Projects that need a terminal dashboard or file browser written in Go
Side-by-side
| Lip Gloss | tview | |
|---|---|---|
| Type | Library | Library |
| Price | Free and open source | Free and open source |
| Licence | MIT | MIT |
| GitHub stars | 12k | 14.1k |
| Setup difficulty | Intermediate | Intermediate |
| How you get it | Install with a package manager | Install with a package manager |
| Main language | Go | Go |
| Last code update | 4 days ago | 3 months ago |
What each one is
Lip Gloss
Lip Gloss is a Go library that lets you define styles for text in a terminal, such as colors, bold or underline, padding, margins, alignment, and borders. It uses a CSS-like, declarative approach, so people familiar with CSS can get started quickly. It is built with terminal user interfaces (TUIs) in mind.
tview
tview is a Go package that provides common building blocks for terminal programs, such as input forms, tables, lists, tree views, text areas, and modal windows. Developers use it to create interactive screens that run inside a terminal instead of a graphical window. The README says the components can be customized and extended.
Best for
Lip Gloss
- Go developers building terminal user interfaces
- Developers who already use Bubble Tea and want consistent styling
- People familiar with CSS who want a similar style model in the terminal
- Anyone printing styled, aligned output from a Go command-line program
tview
- Go developers building interactive command-line tools with menus, forms, or tables
- Developers who want prebuilt terminal widgets instead of drawing everything by hand
- Projects that need a terminal dashboard or file browser written in Go
Strengths
Lip Gloss
- Declarative, CSS-like API that is easy to read and reuse
- Styles are value types, so copying and modifying them does not change the original
- Automatic color downsampling lets one style work across different terminals
tview
- Covers many common widget types, including forms, tables, trees, and lists
- The README lists many real projects that use it, such as K9s
- Includes examples in a demos folder and a GitHub Wiki
Not ideal for
Lip Gloss
- Non-Go projects, since the library is written for Go (reason: it is a Go package)
- People who only need plain text output with no styling (reason: the library adds styling features they would not use)
- Users looking for an end-user application (reason: it is a library that developers include in their own programs)
tview
- People who want to use a finished app rather than write code, since this is a library and needs a Go program around it
- Developers not using Go, because the package is written for the Go language
- Projects needing a graphical desktop or web interface
Trade-offs
Lip Gloss
- Requires working knowledge of Go to use
- Terminal rendering support varies, and some features such as hyperlinks degrade in unsupported terminals
- The README is truncated here, so full API coverage and details are not verified
tview
- The README's install instruction points to the master branch, and the latest release shown is v0.42.0 with no binaries
- Requires writing Go code; there is no standalone program to download
- The README shown is truncated, so detailed API behavior is not fully covered here
Getting started
tview
Add the package to your Go project
go get github.com/rivo/tview@masterFrequently asked questions
What is the difference between Lip Gloss and tview?
Lip Gloss: A Go library for styling and laying out text in terminal user interfaces. tview: A Go library for building interactive terminal user interfaces with ready-made widgets. Lip Gloss suits go developers building terminal user interfaces, while tview suits go developers building interactive command-line tools with menus, forms, or tables.
Are Lip Gloss and tview free?
Lip Gloss: Free and open source. tview: Free and open source.
Is Lip Gloss or tview more popular?
tview has more GitHub stars (14.1k) than Lip Gloss (12k). Popularity isn't the same as fit — check which one matches your use case above.
What are other alternatives to Lip Gloss and tview?
Other options people compare them with include Bubble Tea, termui, FTXUI.
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.