Buildappsthat feel likemagicin the terminal.
The TypeScript framework for terminal apps. 230 components, routing, global state, theming, animations, and a hot-reload dev server. Built to ship to production.
Core Features
Tools for building terminal applications, with a developer experience modeled after web frameworks.
Full type inference,
end to end.
const widget = text<{ label: string }>(opts)
Your APIs stay typed across all 15 packages. Autocomplete, generics, and compile-time checks work end to end.
Physics-based
motion.
Spring physics and easing transitions add smooth, natural motion to your terminal UI.
.panel {background: $bg-surface;border: 1px solid $accent;}
Box, Text, Table, Spinner, Select, Tabs, Modal, Tree, Toast, Form, and more.
Terminal Style Sheets. CSS-like theming for terminal apps.
File-based routing with params, guards, and transitions.
Spring physics and easing-based animations for the terminal.
System monitoring: CPU, memory, disk, network, processes.
Bridges to AI providers, git, execa, and other CLI tools.
In-memory test renderer with query and interaction API.
Rapid prototyping with reactive values and a fluent app builder.
Hot-reload dev server. Restart on file save.
CLI scaffolding tool. One command to start building.
Add components to your project with npx termuijs add.
Ready toBUILDsomething.
Ship your next terminal app with TermUI. Open source. MIT licensed.