Skip to main content
spaday logo, a face with a facemask and lemon slices bounded by a browser window

Build Status codecov License PyPI

Build reactive web-component UIs configured in Python, executed in the browser.

Overview

Construct a UI as a tree of typed Python components from opt-in packages or any library that ships a Custom Elements Manifest. Attach behavior as declarative data: an action DSL (toggle a prop, send a model edit, call an endpoint) and reactive bindings (a control two-way-bound to a state field, or a prop computed from others). spaday's JavaScript runtime renders the tree to real web components and interprets that behavior client-side — so a toggle or a derived value updates with no round-trip to Python.

That UI state is a transports model, so it syncs over any connection (WebSocket, SSE, Jupyter comm) and any codec; the same tree drops into a web app or a Jupyter notebook unchanged.

Like transports, spaday is a Rust core with thin bindings: the component tree, the diff engine, the CEM parser, the action interpreter, and the reactive engine live in Rust and compile to PyO3 (Python authors the tree) and wasm (the browser runs it). One core, two bindings.

from spaday import Widget, element

# a checkbox two-way-bound to a state field, rendered in a Jupyter cell
ui = element("input", type="checkbox").bind("checked", "on", mode="two-way")
w = Widget(ui, state={"on": True})
w  # flip the switch → w.state["on"] flips in Python; set w.state → the switch follows

Install

pip install spaday            # core: author + serialize component trees
pip install "spaday[widget]"  # + the Jupyter / anywidget host

Component ecosystem

Install only the integrations an application uses. Each package provides typed Python components and registers its browser assets with spaday:

Select an installed integration by its entry-point name, for example serve(page, packages=["trees"]).

Documentation

[!NOTE] This library was generated using copier from the Base Python Project Template repository

Download files

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

Source Distribution

spaday-0.7.7.tar.gz (1.2 MB view details)

Uploaded Source

Built Distributions

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

spaday-0.7.7-cp314-cp314-pyemscripten_2026_0_wasm32.whl (1.3 MB view details)

Uploaded CPython 3.14PyEmscripten 2026.0 wasm32

spaday-0.7.7-cp311-abi3-win_amd64.whl (3.5 MB view details)

Uploaded CPython 3.11+Windows x86-64

spaday-0.7.7-cp311-abi3-manylinux_2_28_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.28+ x86-64

spaday-0.7.7-cp311-abi3-manylinux_2_28_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.28+ ARM64

spaday-0.7.7-cp311-abi3-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.11+macOS 11.0+ ARM64

File details

Details for the file spaday-0.7.7.tar.gz.

File metadata

  • Download URL: spaday-0.7.7.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.13

File hashes

Hashes for spaday-0.7.7.tar.gz
Algorithm Hash digest
SHA256 d113623b90fd7a53ecd20be6477d870f885279bd81221e983b1b588216f043a4
MD5 82d892170b2fc0aef7afe7726d74ca92
BLAKE2b-256 cdf13d4058801cb06eeca07eea97493c78e06377a6c5d3b3f782e6661cfb8327

See more details on using hashes here.

File details

Details for the file spaday-0.7.7-cp314-cp314-pyemscripten_2026_0_wasm32.whl.

File metadata

File hashes

Hashes for spaday-0.7.7-cp314-cp314-pyemscripten_2026_0_wasm32.whl
Algorithm Hash digest
SHA256 76f4442b445d70c001d9a0d859cc83c03916eb616b9b6eab67e3005a29ec4154
MD5 17fd47d174fabace4b5c66a739a4f4a4
BLAKE2b-256 939948f77f24e4b34085b45d52f49fcd9cc8a0e5156cde496efbeb0566dc35d8

See more details on using hashes here.

File details

Details for the file spaday-0.7.7-cp311-abi3-win_amd64.whl.

File metadata

  • Download URL: spaday-0.7.7-cp311-abi3-win_amd64.whl
  • Upload date:
  • Size: 3.5 MB
  • Tags: CPython 3.11+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.13

File hashes

Hashes for spaday-0.7.7-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 7aa858adcdc3ef5ce8b4a23aa5c02b2bf9b3c36f8bf16de6bb7020860a58928e
MD5 23e29b7cc485d8ae7d0ece92888babfa
BLAKE2b-256 c8d14e82d7d204c9ae46122b93f1d077e913c7b3698a9e34e97a6a4280a51937

See more details on using hashes here.

File details

Details for the file spaday-0.7.7-cp311-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for spaday-0.7.7-cp311-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 076deb8b72f99f8f378855421deadb86bbcec361db65de9523ae936f5cce350f
MD5 41adbec0fdd2bf3bfdd3ec7d839fa8ba
BLAKE2b-256 b28c6a77b1876b17c2e00047328f98cbee22641f444f8a9315af4984fd51bc12

See more details on using hashes here.

File details

Details for the file spaday-0.7.7-cp311-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for spaday-0.7.7-cp311-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8ef231fb57cbb4bd5e868d99c631285226fab98ba79ca0fd93444705957470fc
MD5 1a46dcc3ce131dadc7ebad4a2162914c
BLAKE2b-256 47a45d191730127269c3e8b9b9708ce228ce8418e6f9f2e17625c382d7c615e3

See more details on using hashes here.

File details

Details for the file spaday-0.7.7-cp311-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for spaday-0.7.7-cp311-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0e66101035bc721ad00b8018d8a84c2191797dad9521da35a218af57c2fe47ee
MD5 0f8c7a2dedbf1ac8066b0f11f277b284
BLAKE2b-256 6066ebe51bf7a7b9ad00c29aad69e76e888247826aefd6999edb91c785c940bb

See more details on using hashes here.

Release history Release notifications | RSS feed

0.7.12

6 files

0.7.11

6 files

0.7.10

6 files

0.7.9

6 files

0.7.8

6 files

This release

0.7.7 This release

6 files

0.7.6

6 files

0.7.5

6 files

0.7.4

6 files

0.7.3

6 files

0.7.2

6 files

0.7.1

5 files

0.7.0

5 files

0.6.0

5 files

0.5.0

4 files

0.4.1

4 files

0.4.0

4 files

0.3.0

4 files

0.2.2

4 files

0.2.1

4 files

0.2.0

4 files

0.1.1

4 files

0.1.0

4 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page