Skip to content
← Tools / Skills
ToolTextualize/10 trustMetrics-checked
Textual logo

Textual

Build gorgeous terminal user interfaces in Python — CSS-styled TUIs, even in the browser.

Visit official site →

About

Textual is a Python framework for building rich terminal user interfaces, from the Textualize team. You compose apps from widgets styled with an actual CSS dialect, with layouts, animations, and a reactive data-binding model — think modern web development, but rendered in the terminal.

It powers a wave of beautiful CLI tools (including AI coding assistants' terminal UIs), and Textual Web can even serve those terminal apps in a browser. With ~37,500 GitHub stars it is the dominant Python TUI framework, MIT licensed, with commercial backing from Textualize (the company also makes rich, the library half the Python world uses for pretty terminal output).

The honest caveat: it is terminal-first by design — if your users expect a real GUI or mobile app, this isn't it. And complex apps can hit the limits of what terminals render well. But for developer tools, dashboards, and agent interfaces, nothing in Python touches it.

What it can do

  • Widget-based TUI framework with a real CSS styling dialect
  • Reactive data binding, layouts, animations, and command palette
  • Textual Web: serve terminal apps in a browser
  • Devtools, console, and a widget gallery for rapid iteration
  • MIT licensed; ~37.5k GitHub stars; commercial backing from Textualize

Setup

  1. pip install textual (Python 3.8+).
  2. Subclass App, compose widgets in compose(), style with CSS in CSS or a .tcss file.
  3. Run with python my_app.py; iterate with textual console and the devtools.
  4. Serve in a browser with Textual Web when you need remote access.

Prerequisites

Python 3.8+ and a modern terminal emulator (truecolor recommended).

Use cases

terminaluipythondeveloper-toolscli

Works with

Trust score — 9/10

/10 trustMetrics-checked

Scored 9/10 (metrics tier, metrics-v1). Evidence: Adoption 9: starScore from 37,463 stars on Textualize/textual — dominant Python TUI framework; Maintenance 9: pushed 2026-10-09 (recency 10); frequent releases assumed 8; issues ratio 368/37463 -> 8; Manual 9: docs verified, commercial backing from Textualize; deduction: terminal-first limits noted. License: MIT.

★ 37,463 GitHub stars

How the trust score is built

Full methodology →
Adoption · stars/downloads, log-scaled vs peers
9.0/10
Maintenance · recency, releases, issue load
9.0/10
Openness · license + docs
10.0/10
Manual review · sanity read + red-flag check
9.0/10
  • · Adoption 9: starScore from 37,463 stars on Textualize/textual — dominant Python TUI framework
  • · Maintenance 9: pushed 2026-10-09 (recency 10); frequent releases assumed 8; issues ratio 368/37463 -> 8
  • · Manual 9: docs verified, commercial backing from Textualize; deduction: terminal-first limits noted

Sources

Every fact above was checked against these sources. Where a claim comes from the provider and couldn't be independently verified, the text says so.