booba

Bubble Tea terminal apps, in a web browser.

go-booba puts Bubble Tea programs in the browser on a Ghostty-powered terminal. Compile a program to WebAssembly and run it with no server, or serve a program over WebSocket or WebTransport from a machine that has it. The demos here run locally in your browser, using either a compiled Go program or a small JavaScript example.

View on GitHub godoc Starter template

Bubble Tea in the browser

Terminal input

Terminal rendering

Terminal Actions (experimental)

Built with booba

Projects that use booba, with demos and runnable examples:

Serving a program

GitHub Pages can only host static files, so the other half of booba is not on this site. The serve package runs a Bubble Tea program, or any command in a PTY, behind an HTTP server and bridges browser clients over WebSocket or WebTransport with the same terminal front end used here. The booba command does it for any local program:

booba --listen 127.0.0.1:8080 -- htop

See the README for the server API and middleware, and Terminal Actions for the experiment behind the touch-controls demo.