Bubbletea

Introduction

Welcome to Bubble Tea, the fun, functional and stateful way to build terminal apps.

Welcome to Bubble Tea, a Go framework based on The Elm Architecture. Bubble Tea is well-suited for simple and complex terminal applications, either inline, full-window, or a mix of both.

What is Bubble Tea?

Bubble Tea is the fun, functional and stateful way to build terminal apps. It's in use in production and includes a number of features and performance optimizations we've added along the way. Among those is a framerate-based renderer, mouse support, focus reporting and more.

Bubbles

Common UI components for Bubble Tea applications

Lip Gloss

Style definitions for nice terminal layouts

Examples

Browse example applications on GitHub

Video Tutorials

Watch video tutorials on YouTube

Key Features

The Elm Architecture

Simple, predictable state management with Model, View, and Update

Framerate-based Renderer

Smooth, efficient screen updates and rendering

Mouse Support

Full mouse event handling (clicks, scroll, motion)

Keyboard Handling

Comprehensive key event support including combos

In the Wild

There are over 10,000 applications built with Bubble Tea! Here are a few staff favourites:

chezmoi

Securely manage your dotfiles across multiple machines

gh-dash

A GitHub CLI extension for PRs and issues

Superfile

A super file manager
Check out Charm & Friends for more applications built with Bubble Tea!