Go-TUI – A framework for building declarative terminal UIs in Go
Templ-inspired declarative syntax for TUIs beats bubbletea's imperative model.

Templ for TUIs — familiar web syntax compiles to pure Go, no reflection or runtime parsing.
Go developers building terminal applications
Bubbletea · Bubble Tea · Gocui
At runtime there's a flexbox layout engine based on yoga that handles positioning and a double-buffered renderer that diffs output to minimize terminal writes.
Here are some other features in the framework:
- It supports reactive state with State[T]. You change a value and the framework redraws for you. You can also forego reactivity and simply use pure components if you would like.
- You can render out a single frame to the terminal scrollback if you don't care about UIs and just want to place a box, table, or other styled component into your stdout. It's super handy and avoids the headache of dealing with the ansi escape sequences directly.
- It supports an inline mode that lets you embed an interactive widget in your shell session instead of taking over the full screen. With it you can build things like custom streaming chat interfaces directly in the terminal.
- I built full editor support for the new filetype. I published a VS Code and Open-VSX extension with completion, hover, and go-to-definition. Just search for "go-tui" in the marketplace to find them. The repo also includes a tree-sitter grammar for Neovim/Helix, and an LSP that proxies Go features through gopls so the files are easy to work with.
There are roughly 20 examples in the repo covering everything from basic components to a dashboard with live metrics and sparklines. I also built an example wrapper for claude code if you wanted to build your own AI chat interface.
Docs & guides: https://go-tui.dev
Repo: https://github.com/grindlemire/go-tui
I'd love feedback on the project!
Templ-inspired declarative syntax for TUIs beats bubbletea's imperative model.
Type-state machine forces valid regex at compile time—IDE won't suggest invalid steps.
Markdown TUI that actually lets you edit, not just view.
1.4k stars makes this the de facto component library for Go templ users.
Evangelion aesthetic is fun, but it's just themed components under the hood.
Pretty man-page viewer with AI explanations, but terminal man alternatives already exist (fzf-manpages, pager configs).