Introduction
The fun, functional and stateful way to build terminal apps.

Why Lip Gloss?
Lip Gloss is a Go library for creating stylish terminal layouts. Built with TUIs in mind, it takes an expressive, declarative approach to terminal rendering. Users familiar with CSS will feel at home with Lip Gloss, as it offers a similar way to define styles for text, borders, and layouts.
Lip Gloss pairs seamlessly with Bubble Tea to style interactive TUIs but works equally well for standalone terminal output.
Key Concepts
Lip Gloss simplifies terminal styling through a few core ideas:
A Style struct defines reusable formatting, such as bold text, foreground, or background colors, applied to strings for consistent rendering.
Apply vibrant foreground and background colors using hex codes, ANSI colors, or predefined palettes to enhance terminal output.
Control spacing with padding, margins, and alignment, or add borders to create organized, visually appealing layouts.
Key Features
CSS-Like Styling
Define styles declaratively with a familiar, chainable API inspired by CSS.
Rich Layouts
Use padding, margins, and borders to create clean, structured terminal interfaces.
Cross-Platform
Style consistently across Linux, macOS, and Windows terminals.
Bubble Tea Integration
Enhance Bubble Tea TUIs with polished visuals.
What’s Next?
Explore more with Lip Gloss:
- Official Examples: See Lip Gloss in action with practical use cases.
- Go Docs: Reference the Lip Gloss API for detailed usage.
- Bubble Tea Docs: Learn how to combine Lip Gloss with Bubble Tea for stunning TUIs.
- Community Discussions: Share ideas or ask questions in the Charmbracelet community.
Welcome to the world of stylish terminal apps!
How is this guide?