Welcome to the Textual widget gallery.
We have many more widgets planned, or you can build your own.
Info
Textual is a TUI framework. Everything below runs in the terminal.
A simple button with a variety of semantic styles.
Button reference
Checkbox
A classic checkbox control.
Checkbox reference
ContentSwitcher
A widget for containing and switching display between multiple child
widgets.
ContentSwitcher reference
DataTable
A powerful data table, with configurable cursors.
DataTable reference
DirectoryTree
A tree view of files and folders.
DirectoryTree reference
A footer to display and interact with key bindings.
Footer reference
A header to display the app's title and subtitle.
Header reference
A control to enter text.
Input reference
Label
A simple text label.
Label reference
ListView
Display a list of items (items may be other widgets).
ListView reference
LoadingIndicator
Display an animation while data is loading.
LoadingIndicator reference
MarkdownViewer
Display and interact with a Markdown document (adds a table of contents and browser-like navigation to Markdown).
MarkdownViewer reference
Markdown
Display a markdown document.
Markdown reference
Placeholder
Display placeholder content while you are designing a UI.
Placeholder reference
A simple radio button.
RadioButton reference
RadioSet
A collection of radio buttons, that enforces uniqueness.
RadioSet reference
Static
Displays simple static content. Typically used as a base class.
Static reference
Switch
A on / off control, inspired by toggle buttons.
Switch reference
Tabs
A row of tabs you can select with the mouse or navigate with keys.
Tabs reference
TabbedContent
A Combination of Tabs and ContentSwitcher to navigate static content.
TabbedContent reference
TextLog
Display and update text in a scrolling panel.
TextLog reference
Tree
A tree control with expandable nodes.
Tree reference