❯dart_tui
ComponentsBlocksExamplesGuides

Guides

  • Installation
  • Model–Update–View
  • Commands
  • Program options
  • Styling
  • Colors & gradients
  • Text & layout
  • Readline keys
  • File logging
  • Architecture notes
  • Examples

Components

  • Spinner
  • Progress bar
  • Text input
  • Text area
  • Select list
  • List (fuzzy filter)new
  • Tabs
  • Table
  • Tree
  • Multi-selectnew
  • Cursor
  • Viewport
  • Timer
  • Stopwatch
  • Paginator
  • Help
  • File picker
  • Spring

Blocks

  • Formsnew
  • Prompts
  • Gum helpers
  • Canvas compositing
  • Package manager
  • Showcase gallery

Examples

  • Multiple views
  • Shopping list
  • Real-time updates
  • Program.send()
  • Sequenced commands
  • Prevent quit
  • Focus & blur
  • Print key
  • Window size
  • Fullscreen
  • Alt-screen toggle
  • Set window title
  • Cursor style
  • Piped input
  • Vanish
  • Chained prompts

Components

Components

Drop-in, stateful widgets — spinners, tables, trees, inputs and more. Each is a TeaModel you embed in your own update/view loop.

18 entries

Spinner preview

Spinner

Animated indeterminate activity indicator.

Progress bar preview

Progress bar

Determinate 0.0–1.0 progress with a filled/empty bar.

Text input preview

Text input

Single-line input with cursor, validation and suggestions.

Text area preview

Text area

Multi-line editor with scroll and word movement.

Select list preview

Select list

Vertical single-choice list with a keyboard cursor.

List (fuzzy filter) previewnew

List (fuzzy filter)

Full list with incremental fuzzy filtering and descriptions.

Tabs preview

Tabs

Tabbed interface with styled labels and a content area.

Table preview

Table

Scrollable data table with per-cell styling.

Tree preview

Tree

Hierarchical, expandable list with box-drawing connectors.

Multi-select previewnew

Multi-select

Scrollable checkbox list with select-all.

Cursor preview

Cursor

In-line blinking cursor for custom editors.

Viewport preview

Viewport

Scrollable content pane with soft-wrap.

Timer preview

Timer

Countdown timer with start/stop/reset.

Stopwatch preview

Stopwatch

Elapsed-time stopwatch with start/stop/reset.

Paginator preview

Paginator

Compact page indicator (dots or numeric).

Help preview

Help

Compact / full keybinding reference from a KeyMap.

File picker preview

File picker

Async directory browser with extension filtering.

Spring preview

Spring

Harmonica-style damped-spring easing for any scalar.

❯dart_tui

Elm-style terminal UI framework for Dart. Inspired by Bubble Tea & Lipgloss, built in pure Dart.

Components

  • Spinner
  • Progress bar
  • Text input
  • Text area
  • Select list
  • List (fuzzy filter)

Blocks

  • Forms
  • Prompts
  • Gum helpers
  • Canvas compositing
  • Package manager
  • Showcase gallery

Examples

  • Multiple views
  • Shopping list
  • Real-time updates
  • Program.send()
  • Sequenced commands
  • Prevent quit

Guides

  • Installation
  • Model–Update–View
  • Commands
  • Program options
  • Styling
  • Colors & gradients

Resources

  • GitHub
  • pub.dev
  • Bubble Tea
  • Lipgloss

Released under the MIT License. © 2026 dart_tui.

v1.4.0 · built with Next.js on Vercel