docs/index.md
!!! tip inline end
See the navigation links in the header or side-bar.
Click :octicons-three-bars-16: (top left) on mobile.
Welcome to the Textual framework documentation.
Get started{ .md-button .md-button--primary } or go straight to the Tutorial
Textual is a Rapid Application Development framework for Python, built by Textualize.io.
Build sophisticated user interfaces with a simple Python API. Run your apps in the terminal or a web browser!
<div class="grid cards" markdown>:material-clock-fast:{ .lg .middle } :material-language-python:{. lg .middle } Rapid development
Uses your existing Python skills to build beautiful user interfaces.
:material-raspberry-pi:{ .lg .middle } Low requirements
Run Textual on a single board computer if you want to.
:material-microsoft-windows:{ .lg .middle } :material-apple:{ .lg .middle } :fontawesome-brands-linux:{ .lg .middle } Cross platform
Textual runs just about everywhere.
:material-network:{ .lg .middle } Remote
Textual apps can run over SSH.
:fontawesome-solid-terminal:{ .lg .middle } CLI Integration
Textual apps can be launched and run from the command prompt.
:material-scale-balance:{ .lg .middle } Open Source
Textual is licensed under MIT.
Textual has enabled an ecosystem of applications and tools for developers and non-developers alike.
Here are a few examples.
Toad is a beautiful terminal front-end for AI coding tools such as OpenHands, Claude Code, Gemini CLI, and many more.
<div> <a href="https://batrachian.ai"> --8<-- "docs/images/screenshots/toad.svg" </a> </div>The API client that lives in your terminal. Posting is a beautiful open-source terminal app for developing and testing APIs.
<div> <a href="https://posting.sh"> --8<-- "docs/images/screenshots/posting.svg" </a> </div>A terminal application to view, tail, merge, and search log files (plus JSONL).
<div> <a href="https://github.com/Textualize/toolong"> --8<-- "docs/images/screenshots/toolong.svg" </a> </div>Memray is a memory profiler for Python, built by Bloomberg.
<div> <a href="https://github.com/bloomberg/memray"> --8<-- "docs/images/screenshots/memray.svg" </a> </div>Your single pane of glass for real-time analytics into MySQL/MariaDB & ProxySQL
<div> <a href="https://github.com/charles-001/dolphie"> --8<-- "docs/images/screenshots/dolphie.svg" </a> </div>An easy, fast, and beautiful database client for the terminal.
<div> <a href="https://harlequin.sh"> --8<-- "docs/images/screenshots/harlequin.svg" </a> </div>The following examples are taken from the examples directory.
Click the tabs to see the code behind the example.
=== "Pride example"
```{.textual path="examples/pride.py"}
```
=== "pride.py"
```py
--8<-- "examples/pride.py"
```
=== "Calculator example"
```{.textual path="examples/calculator.py" columns=100 lines=41 press="6,.,2,8,3,1,8,5,3,0,7,1,wait:400"}
```
=== "calculator.py"
```python
--8<-- "examples/calculator.py"
```
=== "calculator.tcss"
```css
--8<-- "examples/calculator.tcss"
```