language Go
license MIT
stars 2
downloads

dado is a component library for building terminal user interfaces in Go. It’s built on its own widget core layered directly over gdamore/tcell, with a composable component model, a real theme system, a typed event model, and a navigable page stack.

A dense dado dashboard rendered in the terminal

It’s the foundation I build my other terminal tools on. Both /ichi (a Git TUI) and /qry (a database client) are built on dado and serve as real-world testbeds for it.

What it does

  • 54 components — data grids, charts, modals, forms, git graphs, node graphs, log viewers, and more, all ready to drop into an app
  • 26 built-in themes — Nord, Dracula, Catppuccin, Tokyo Night, Gruvbox, Rosé Pine, and more, switchable at runtime with a single call
  • Typed event system — focus, key, change, submit, and activate events flow through one consistent interface across every component
  • Views & navigation — a page stack with breadcrumbs and persistent chrome, so multi-screen apps stay simple
  • Built on tcell — a self-contained widget core over gdamore/tcell, with no heavyweight framework in between

Docs

Full documentation, a component catalog with live theme previews, and a quick-start guide live at dado.atterpac.dev.

Status

Active. The component set and theme system are stable and in daily use across my other projects; new components and refinements land regularly.

recent releases

/dado
  • May 31, 2026 /dado v0.1.0 v0.1.0