Hatui
Hatui is a configurable hacker-style terminal UI toolkit for Python. It lets you compose full-screen TUIs from YAML screens, reusable widgets, themes, routing, and data providers.
Install
Recommended for end users:
pipx install hatui-kit
Python package install:
pip install hatui-kit
Installed CLI command:
hatui
Windows convenience build:
- Download
hatui-windows-amd64.zipfrom GitHub Releases - Unzip it
- Run
hatui.exe
Quick start
Run the bundled demo:
hatui
Validate the bundled demo spec:
hatui validate
Render a non-interactive preview:
hatui preview --width 100 --height 28 --frames 1
Run a custom spec:
hatui run path/to/screen.yaml
What Hatui provides
- declarative YAML screen loading with includes
- widget and provider registries
- routing, modals, focus traversal, and debug overlays
- theme slots, color tokens, and font tokens
- reusable hacker-style widgets for dashboards and console simulations
Example custom spec
theme:
preset: clean_ops
providers:
- type: constant
name: hello_text
target: ui.hello
value: Hello from Hatui
screen:
type: box
name: root_box
title: demo
padding: 1
child:
type: text
name: hello_text
text_key: ui.hello
Run it with:
hatui run ./demo.yaml
Development
Editable install:
python -m pip install -e .
Smoke checks:
python -m compileall src
PYTHONPATH=src python -m hatui validate
PYTHONPATH=src python -m hatui preview --width 100 --height 28 --frames 1
Metadata
Release files for hatui-kit 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| hatui_kit-0.1.0.tar.gz | 70.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| hatui_kit-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 187.8 kB
Release files / hatui_kit-0.1.0.tar.gz
| Download URL | hatui_kit-0.1.0.tar.gz |
|---|---|
| Size | 70.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ea0607b2767b86bb80fbfd232de2033d1d68b0b0c4ef92410aca762880de4222
|
|
BLAKE2b-256 checksum How to use checksums |
3b48035faf87af69cc1c7552315daa85fcbafb6e272e2364a054a3a462138064
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 12, 2026.
Transparency logRelease files / hatui_kit-0.1.0-py3-none-any.whl
| Download URL | hatui_kit-0.1.0-py3-none-any.whl |
|---|---|
| Size | 117.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a3142fb0e9f4a7f69b5ed730ea813087494e0d8ef67e1b33e4d8de6ece6be7d1
|
|
BLAKE2b-256 checksum How to use checksums |
3fc50cb8fe0559c00c149c00468cb11be5e69e021770f1d6fefe66c1a1cbd4bd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 12, 2026.
Transparency log