Pre-release
This release is a pre-release and may not be stable for production use.
xnano-core
The compiled Rust engine for building terminal interfaces: buffers, widgets, layout, effects, state management, and a live runtime.
Install
pip install xnano-core
Most people install the top-level xnano package instead, which adds the terminal API (xnano.open(), placements, hooks, scenes and sound) on top of this engine:
pip install xnano
For v1 of xnano (a different API), install xnano>=1.2.3,<2.
Example
from xnano_core import Point, Size, Style, Color, Clock
# Basic geometry
point = Point(2, 3) + Point(1, 1)
assert (point.x, point.y) == (3, 4)
# Styles combine colors and text attributes
style = Style('red', 'black', bold=True)
assert 'bold' in style.modifiers
# Clocks can be real or manually advanced for testing
clock = Clock.manual(elapsed_seconds=2.0)
assert clock.elapsed_milliseconds == 2000.0
What it provides
- Cell buffers: mutable 2D arrays of terminal cells with styles, colors and text attributes
- Widgets: built-in composable pieces like blocks, tables, gauges, charts, calendars and text editors
- Operations: animations, effects, transitions, and state mutations on the fly
- Expression language: scalar expressions that react to state changes and user input
- Input: keyboard and mouse events with key bindings and focus management
- State management: declarative state schema with validation, patches, and observations
- Runtime: offscreen and live terminal execution with event loops and frame timing
Links
- Repository: https://github.com/hsaeed3/xnano
- Documentation: https://xnano.hammad.app
- API reference: https://xnano.hammad.app/api-reference/
- License: MIT
Metadata
Release files for xnano-core 2.0.0b3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| xnano_core-2.0.0b3.tar.gz | 384.3 kB | Details |
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| xnano_core-2.0.0b3-cp310-abi3-win_amd64.whl | CPython 3.10 | abi3 | Windows x86-64 | Details |
| xnano_core-2.0.0b3-cp310-abi3-pyemscripten_2026_0_wasm32.whl | CPython 3.10 | abi3 | PyEmscripten 2026.0+ WebAssembly | Details |
| xnano_core-2.0.0b3-cp310-abi3-musllinux_1_2_x86_64.whl | CPython 3.10 | abi3 | Linux musl 1.2+ x86-64 | Details |
| xnano_core-2.0.0b3-cp310-abi3-musllinux_1_2_aarch64.whl | CPython 3.10 | abi3 | Linux musl 1.2+ ARM64 | Details |
| xnano_core-2.0.0b3-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.10 | abi3 | Linux glibc 2.17+ x86-64 | Details |
| xnano_core-2.0.0b3-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl | CPython 3.10 | abi3 | Linux glibc 2.17+ ARM64 | Details |
| xnano_core-2.0.0b3-cp310-abi3-macosx_11_0_arm64.whl | CPython 3.10 | abi3 | macOS 11.0+ ARM64 | Details |
| xnano_core-2.0.0b3-cp310-abi3-macosx_10_12_x86_64.whl | CPython 3.10 | abi3 | macOS 10.12+ x86-64 | Details |
Total release size: 22.3 MB
Release files / xnano_core-2.0.0b3.tar.gz
| Download URL | xnano_core-2.0.0b3.tar.gz |
|---|---|
| Size | 384.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9af40714c245ac8b26ff9e7216e4bec414cf479a9c523f093c564bfb16cf97a0
|
|
BLAKE2b-256 checksum How to use checksums |
3d4dbda9ea895802a97dfe78ae7e6d2bcfc0b01d34a5204aa58a53334900cd08
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / xnano_core-2.0.0b3-cp310-abi3-win_amd64.whl
| Download URL | xnano_core-2.0.0b3-cp310-abi3-win_amd64.whl |
|---|---|
| Size | 3.0 MB |
| Tags | CPython 3.10 Windows x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
35836ce00a24570c909ff7a8b920b169593187a2649eadb8c33b4d9a6eaf4730
|
|
BLAKE2b-256 checksum How to use checksums |
128295b14e14d01e7774176d0abf2b714eae3e72cfbebdbe7ceb2cc0be12b2eb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / xnano_core-2.0.0b3-cp310-abi3-pyemscripten_2026_0_wasm32.whl
| Download URL | xnano_core-2.0.0b3-cp310-abi3-pyemscripten_2026_0_wasm32.whl |
|---|---|
| Size | 1.7 MB |
| Tags | CPython 3.10 PyEmscripten 2026.0+ WebAssembly abi3 |
|
SHA-256 checksum How to use checksums |
23b8c7050069442ef88f84a94e52105b88b659129ac0db4d389d8b6aac537358
|
|
BLAKE2b-256 checksum How to use checksums |
68343ce143e967c0f341a4e06d7487554fa5cae4eafbab7249b76304a8fdf348
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / xnano_core-2.0.0b3-cp310-abi3-musllinux_1_2_x86_64.whl
| Download URL | xnano_core-2.0.0b3-cp310-abi3-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 3.1 MB |
| Tags | CPython 3.10 Linux musl 1.2+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
fd1854319dd7e90364c7cbd5878bc6e523f6318891d998d1ccc454617a255ca2
|
|
BLAKE2b-256 checksum How to use checksums |
cbc3c53ad4fe950262503a39d679cc609c3066e06c7893b70a084c83663ee515
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / xnano_core-2.0.0b3-cp310-abi3-musllinux_1_2_aarch64.whl
| Download URL | xnano_core-2.0.0b3-cp310-abi3-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 3.0 MB |
| Tags | CPython 3.10 Linux musl 1.2+ ARM64 abi3 |
|
SHA-256 checksum How to use checksums |
940f662cc3ca8655e466d2f913e1761d2cd3a0cc87fa391b589b036712715e05
|
|
BLAKE2b-256 checksum How to use checksums |
80bad13005fce9b97dea281b7d033c4fbed329e6ce59d70158d6f1da2dfd319b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / xnano_core-2.0.0b3-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | xnano_core-2.0.0b3-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 2.9 MB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
4fb3e924c96db4ff451f3ede91c9ef7d3f2b9387e4e29b9a94b94f306c54addd
|
|
BLAKE2b-256 checksum How to use checksums |
3cc2477c53789c04ec095e7a3c0a62324f3b13e2d4e6dd648a2c76efd74baf7c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / xnano_core-2.0.0b3-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | xnano_core-2.0.0b3-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 2.8 MB |
| Tags | CPython 3.10 Linux glibc 2.17+ ARM64 abi3 |
|
SHA-256 checksum How to use checksums |
ac1878e35e17ac1bd29d385cf1128dcb4dbf51e12e6fa346d0f528cbfa144e04
|
|
BLAKE2b-256 checksum How to use checksums |
46b2ad4b508ea3dece5c6f3699d22b69ce6a072cd813d085b98602197b2fb009
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / xnano_core-2.0.0b3-cp310-abi3-macosx_11_0_arm64.whl
| Download URL | xnano_core-2.0.0b3-cp310-abi3-macosx_11_0_arm64.whl |
|---|---|
| Size | 2.7 MB |
| Tags | CPython 3.10 abi3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
0e2ece1aca39364efd1ebb70572ebd67d9d54f2a6bddb3299c40a4766be521ac
|
|
BLAKE2b-256 checksum How to use checksums |
824c0b29c445daf936c7dc0df2dc0e018b9f5fe76844bd648793cf6c662cdd87
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / xnano_core-2.0.0b3-cp310-abi3-macosx_10_12_x86_64.whl
| Download URL | xnano_core-2.0.0b3-cp310-abi3-macosx_10_12_x86_64.whl |
|---|---|
| Size | 2.8 MB |
| Tags | CPython 3.10 abi3 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
6788deb59715aa96a970b85883060aeff60386378424283087ce06355849a2e3
|
|
BLAKE2b-256 checksum How to use checksums |
d2cb2620e85ae75bc30b6dd2fc0a9f3cd0b85b7fc302e109e40773c891bee62c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|