Skip to main content

Modern Text User Interface framework

Project description

Discord Supported Python Versions PyPI version OS support

textual-splash

Textual

Build cross-platform user interfaces with a simple Python API.

Run your apps in the terminal or a web browser.

Widgets

Textual's library of widgets covers everything from buttons, tree controls, data tables, inputs, text areas, and more… Combined with a flexible layout system, you can realize any User Interface you need.

Predefined themes ensure your apps will look good out of the box.

buttons

tree

datatables

inputs

listview

textarea

Installing

Install Textual via pip:

pip install textual textual-dev

See getting started for details.

Demo

Run the following command to see a little of what Textual can do:

python -m textual

Or try the textual demo without installing (requires uv):

uvx --python 3.12 textual-demo

Textual ❤️ Web

textual-serve

Textual apps are equally at home in the browser as they are the terminal.

Any Textual app may be served with textual serve — so you can share your creations on the web.

Here's how to serve the demo app:

textual serve "python -m textual"

In addition to serving your apps locally, you can serve apps with Textual-Web.

Textual Web's firewall-busting technology can serve an unlimited number of applications.

Since Textual apps have low system requirements, you can install them anywhere Python also runs. Turning any device in to a connected device. No desktop required!

Documentation

Head over to the Textual documentation to start building.

Join us on Discord

Join the Textual developers and community on our Discord Server.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

textual-0.89.0.tar.gz (1.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

textual-0.89.0-py3-none-any.whl (656.0 kB view details)

Uploaded Python 3

File details

Details for the file textual-0.89.0.tar.gz.

File metadata

  • Download URL: textual-0.89.0.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.12.7 Darwin/24.1.0

File hashes

Hashes for textual-0.89.0.tar.gz
Algorithm Hash digest
SHA256 b3282598ded248410623f0c5ee83cbfc8f5424aa0f92222bc44fdc422700a03f
MD5 b5bcde8ccd0ddeb73849164684b22bce
BLAKE2b-256 8fe811bf8e6c7bae661d6d8ac3f05cc3449f860223b2fb411ee1d16822cb26c6

See more details on using hashes here.

File details

Details for the file textual-0.89.0-py3-none-any.whl.

File metadata

  • Download URL: textual-0.89.0-py3-none-any.whl
  • Upload date:
  • Size: 656.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.12.7 Darwin/24.1.0

File hashes

Hashes for textual-0.89.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2968094ad6d0caee3f26700861cfd505dcb7ed17070041e1c42b6066010f3906
MD5 cc89d6c224a6772e026e71b419dff82c
BLAKE2b-256 9c97513af288bfa13cb8541deae8061a36e128b1d409d93a5f7cf9840a57d63a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page