About this project
Textual is an open-source Python framework for building user interfaces that run in the terminal or in a web browser. Its API combines modern Python with ideas from web development, aiming for a lean app development experience.
Key capabilities described in the README:
- Cross-platform UI: apps can run in the terminal or be served in a web browser via `textual serve`.
- Widget library: includes buttons, tree controls, data tables, inputs, text areas, list views, and more.
- Flexible layout system and predefined themes for out-of-the-box styling.
- CSS-like styling through a `CSS` attribute on apps.
- Asynchronous framework under the hood, but async is optional.
- Testing framework for maintaining apps long-term.
- Dev console provided by the separate `textual-dev` package, which connects from another terminal and shows system messages, events, logged messages, and print statements.
- Fuzzy-search command palette opened with `ctrl+p`, extensible with custom commands.
- Installation via `pip install textual textual-dev`.
- Demo available by running `python -m textual` or via `uvx --python 3.12 textual-demo`.
- Textual Web can serve apps with firewall-busting technology and low system requirements.
The README includes a short clock app example demonstrating `App`, `ComposeResult`, `Digits`, CSS, and interval-based updates. It also links to documentation, examples, a widget gallery, and a Discord community.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.