Directories
¶
| Path | Synopsis |
|---|---|
|
examples
|
|
|
app/focus
Package focus demonstrates a screen with multiple components and tab/shift-tab focus cycling.
|
Package focus demonstrates a screen with multiple components and tab/shift-tab focus cycling. |
|
app/gate
Package gate demonstrates a one-shot pre-screen flow: a "gated" root screen that pushes a login form on first activation, receives the credentials when the form pops, and re-pushes the form on logout.
|
Package gate demonstrates a one-shot pre-screen flow: a "gated" root screen that pushes a login form on first activation, receives the credentials when the form pops, and re-pushes the form on logout. |
|
app/layouts
Package layouts demonstrates that pkg/layout can describe arbitrary compositions without the caller doing "m.h-2" math.
|
Package layouts demonstrates that pkg/layout can describe arbitrary compositions without the caller doing "m.h-2" math. |
|
app/replace
Package replace demonstrates screen.Replace — atomic top-of-stack swap.
|
Package replace demonstrates screen.Replace — atomic top-of-stack swap. |
|
app/stack
Package stack demonstrates a screen stack with data flowing in two directions:
|
Package stack demonstrates a screen stack with data flowing in two directions: |
|
app/status
Package status demonstrates how a screen sends transient feedback to the app's statusbar.
|
Package status demonstrates how a screen sends transient feedback to the app's statusbar. |
|
app/tabs
Package tabs demonstrates pkg/tab as the layout primitive of a host screen.
|
Package tabs demonstrates pkg/tab as the layout primitive of a host screen. |
|
data/alert
Package alert demonstrates pkg/alert in the standard modal pattern, alongside the lighter app.Info / app.Error statusbar messages.
|
Package alert demonstrates pkg/alert in the standard modal pattern, alongside the lighter app.Info / app.Error statusbar messages. |
|
data/confirm
Package confirm demonstrates pkg/confirm in the standard modal pattern: a list of files, press d to delete; a confirm dialog overlays the list via layout.ZStack(base, layout.Center(...)).
|
Package confirm demonstrates pkg/confirm in the standard modal pattern: a list of files, press d to delete; a confirm dialog overlays the list via layout.ZStack(base, layout.Center(...)). |
|
data/drilldown
Package drilldown demonstrates a master-detail screen with async fetches at both levels, plus a third level via push:
|
Package drilldown demonstrates a master-detail screen with async fetches at both levels, plus a third level via push: |
|
data/form
Package form demonstrates pkg/form: a vertical form with Text, Select, and Confirm fields.
|
Package form demonstrates pkg/form: a vertical form with Text, Select, and Confirm fields. |
|
data/inspector
Package inspector demonstrates pkg/inspector — a two-column label/value viewer with expand/collapse for nested structured records.
|
Package inspector demonstrates pkg/inspector — a two-column label/value viewer with expand/collapse for nested structured records. |
|
data/list
Package list demonstrates a filterable list.Model as a single-screen app.
|
Package list demonstrates a filterable list.Model as a single-screen app. |
|
data/loading
Package loading demonstrates pkg/pane's loading state across a list, a logview, and a tree.
|
Package loading demonstrates pkg/pane's loading state across a list, a logview, and a tree. |
|
data/logview
Package logview demonstrates pkg/logview as a single-screen app: a synthetic log stream you can search ("/"), jump between matches (n/N), scroll (pgup/pgdn/arrows), and pin (G to follow, g to top).
|
Package logview demonstrates pkg/logview as a single-screen app: a synthetic log stream you can search ("/"), jump between matches (n/N), scroll (pgup/pgdn/arrows), and pin (G to follow, g to top). |
|
data/metrics
Package metrics demonstrates pkg/metrics inline primitives — Badge, Ratio, Bar, Spark — composed into a polled deployments table.
|
Package metrics demonstrates pkg/metrics inline primitives — Badge, Ratio, Bar, Spark — composed into a polled deployments table. |
|
data/poll
Package poll demonstrates pkg/poll driving auto-refresh of a list, with keyed items so the user's cursor survives every refresh even as the underlying set churns.
|
Package poll demonstrates pkg/poll driving auto-refresh of a list, with keyed items so the user's cursor survives every refresh even as the underlying set churns. |
|
data/polltable
Package polltable demonstrates pkg/poll driving auto-refresh of a table.Model, with SetKeyedRows pinning the cursor to the same row by Key across every refresh.
|
Package polltable demonstrates pkg/poll driving auto-refresh of a table.Model, with SetKeyedRows pinning the cursor to the same row by Key across every refresh. |
|
data/runlog
Package runlog demonstrates streaming a subprocess's stdout/stderr into pkg/logview, with tab-cycling focus between a command picker on the left and the logview on the right.
|
Package runlog demonstrates streaming a subprocess's stdout/stderr into pkg/logview, with tab-cycling focus between a command picker on the left and the logview on the right. |
|
data/runner
Package runner demonstrates pkg/runner: pick an interactive subprocess from a list, hand the terminal to it, and return to the TUI on exit.
|
Package runner demonstrates pkg/runner: pick an interactive subprocess from a list, hand the terminal to it, and return to the TUI on exit. |
|
data/table
Package table demonstrates pkg/table — a filterable cursor-driven tabular view with a sticky header.
|
Package table demonstrates pkg/table — a filterable cursor-driven tabular view with a sticky header. |
|
data/tree
Package tree demonstrates pkg/tree as a single-screen app: a synthetic project layout you can expand/collapse, search ("/"), and filter ("\") down to matching subtrees.
|
Package tree demonstrates pkg/tree as a single-screen app: a synthetic project layout you can expand/collapse, search ("/"), and filter ("\") down to matching subtrees. |
|
launcher
command
Launcher: the single entry point for tuilib examples.
|
Launcher: the single entry point for tuilib examples. |
|
pane/showcase
Package showcase demonstrates pane border styles, title positions, and slot-bracket variants in a single screen.
|
Package showcase demonstrates pane border styles, title positions, and slot-bracket variants in a single screen. |
|
themecheck
Package themecheck is an interactive theme picker.
|
Package themecheck is an interactive theme picker. |
|
pkg
|
|
|
alert
Package alert provides a modal acknowledgement dialog component.
|
Package alert provides a modal acknowledgement dialog component. |
|
ansi
Package ansi holds small, dependency-free ANSI helpers for the corners of the library where lipgloss's full \x1b[0m reset is the wrong tool — most notably cells inside a styled row (e.g.
|
Package ansi holds small, dependency-free ANSI helpers for the corners of the library where lipgloss's full \x1b[0m reset is the wrong tool — most notably cells inside a styled row (e.g. |
|
app
Package app is the standard TUI shell: a breadcrumb header, a flex body that renders the active screen's layout, and a statusbar footer.
|
Package app is the standard TUI shell: a breadcrumb header, a flex body that renders the active screen's layout, and a statusbar footer. |
|
breadcrumb
Package breadcrumb renders a single-line breadcrumb trail like "Root › Modules › dev" for use as a TUI header bar.
|
Package breadcrumb renders a single-line breadcrumb trail like "Root › Modules › dev" for use as a TUI header bar. |
|
config
Package config carries the user-supplied YAML config that any tuilib component can consult.
|
Package config carries the user-supplied YAML config that any tuilib component can consult. |
|
confirm
Package confirm provides a modal yes/no dialog component.
|
Package confirm provides a modal yes/no dialog component. |
|
filter
Package filter provides a single-line textinput wrapped in a pane — the "press / to search, enter to commit, esc to clear" pattern every TUI eventually needs.
|
Package filter provides a single-line textinput wrapped in a pane — the "press / to search, enter to commit, esc to clear" pattern every TUI eventually needs. |
|
form
Package form is a vertical form component: a sequence of Text, Select, and Confirm fields with tab/shift-tab focus cycling and a submit button.
|
Package form is a vertical form component: a sequence of Text, Select, and Confirm fields with tab/shift-tab focus cycling and a submit button. |
|
help
Package help renders a toggleable help overlay showing key bindings, modeled on pug's help widget.
|
Package help renders a toggleable help overlay showing key bindings, modeled on pug's help widget. |
|
input
Package input provides a single-line text input wrapped in a pane — a theme-styled, bordered text field with a title slot on the border.
|
Package input provides a single-line text input wrapped in a pane — a theme-styled, bordered text field with a title slot on the border. |
|
inspector
Package inspector provides a two-column label/value viewer for structured records — pod specs, REST responses, Prefect run details, any "show me the fields of this thing" surface.
|
Package inspector provides a two-column label/value viewer for structured records — pod specs, REST responses, Prefect run details, any "show me the fields of this thing" surface. |
|
layout
Package layout is a tiny declarative engine for composing Bubble Tea view strings.
|
Package layout is a tiny declarative engine for composing Bubble Tea view strings. |
|
list
Package list provides a cursor-driven, optionally filterable list inside a bordered pane.
|
Package list provides a cursor-driven, optionally filterable list inside a bordered pane. |
|
logview
Package logview is a streaming text viewer with incremental search and keyboard navigation, wrapped in a pane.
|
Package logview is a streaming text viewer with incremental search and keyboard navigation, wrapped in a pane. |
|
metrics
Package metrics renders small inline summaries — status badges, ratios, progress bars, sparklines — sized to fit inside list rows, table cells, or inspector values without breaking outer SGR state.
|
Package metrics renders small inline summaries — status badges, ratios, progress bars, sparklines — sized to fit inside list rows, table cells, or inspector values without breaking outer SGR state. |
|
pane
Package pane provides a bordered, titled, scrollable region for Bubble Tea TUIs.
|
Package pane provides a bordered, titled, scrollable region for Bubble Tea TUIs. |
|
poll
Package poll is a thin interval-driven ticker for screens that need to auto-refresh remote state — k8s deployment status, Prefect runs, REST endpoints — without re-implementing the same tea.Tick + generation- counter dance every time.
|
Package poll is a thin interval-driven ticker for screens that need to auto-refresh remote state — k8s deployment status, Prefect runs, REST endpoints — without re-implementing the same tea.Tick + generation- counter dance every time. |
|
runner
Package runner runs an interactive subprocess from inside a Bubble Tea program: it suspends the TUI (releasing the terminal so the subprocess can take over stdin/stdout/stderr), executes the command, then re-enters the alt-screen once the subprocess exits.
|
Package runner runs an interactive subprocess from inside a Bubble Tea program: it suspends the TUI (releasing the terminal so the subprocess can take over stdin/stdout/stderr), executes the command, then re-enters the alt-screen once the subprocess exits. |
|
screen
Package screen defines a richer navigation model for pkg/app.
|
Package screen defines a richer navigation model for pkg/app. |
|
statusbar
Package statusbar renders a one-line status strip with left/center/right slots, modeled on pug's footer.
|
Package statusbar renders a one-line status strip with left/center/right slots, modeled on pug's footer. |
|
tab
Package tab provides a tabbed container that hosts multiple screen.Screen bodies inside one parent screen.
|
Package tab provides a tabbed container that hosts multiple screen.Screen bodies inside one parent screen. |
|
table
Package table provides a cursor-driven, optionally filterable tabular view inside a bordered pane.
|
Package table provides a cursor-driven, optionally filterable tabular view inside a bordered pane. |
|
theme
Package theme collapses every color used by more than one tuilib component into a single struct.
|
Package theme collapses every color used by more than one tuilib component into a single struct. |
|
toggle
Package toggle provides a yes/no (boolean) selector wrapped in a pane — two labelled buttons rendered side-by-side with the active side highlighted, inside a bordered titled box.
|
Package toggle provides a yes/no (boolean) selector wrapped in a pane — two labelled buttons rendered side-by-side with the active side highlighted, inside a bordered titled box. |
|
tree
Package tree provides a searchable, expand/collapse hierarchical view inside a bordered pane.
|
Package tree provides a searchable, expand/collapse hierarchical view inside a bordered pane. |
Click to show internal directories.
Click to hide internal directories.