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.4.tar.gz (1.1 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.4-cp314-cp314-pyemscripten_2026_0_wasm32.whl (1.3 MB view details)

Uploaded CPython 3.14PyEmscripten 2026.0 wasm32

spaday-0.7.4-cp311-abi3-win_amd64.whl (3.4 MB view details)

Uploaded CPython 3.11+Windows x86-64

spaday-0.7.4-cp311-abi3-manylinux_2_28_x86_64.whl (1.5 MB view details)

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

spaday-0.7.4-cp311-abi3-manylinux_2_28_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.28+ ARM64

spaday-0.7.4-cp311-abi3-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.11+macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: spaday-0.7.4.tar.gz
  • Upload date:
  • Size: 1.1 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.4.tar.gz
Algorithm Hash digest
SHA256 7cb2c8fb0fa818dacec300f7b98a669b762ed9999c0438d71d566b1fa9f2f5c2
MD5 0b0e0d0e33cc29f24825d127b72d9769
BLAKE2b-256 f7339ba344ed09950fb33724dedba59fc06ef1570854960c3774c938360bb0df

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for spaday-0.7.4-cp314-cp314-pyemscripten_2026_0_wasm32.whl
Algorithm Hash digest
SHA256 6b01f0e662e46bdf83ad8ab547104adab44fda84ff9330c82df175e9493ad70e
MD5 ee6d1b025c2f70c7dcbf41c8a8a8db1d
BLAKE2b-256 1642ae433aa605bf5daf07f64cc6d1033dec217ed44d638764bd08eb55b62c28

See more details on using hashes here.

File details

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

File metadata

  • Download URL: spaday-0.7.4-cp311-abi3-win_amd64.whl
  • Upload date:
  • Size: 3.4 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.4-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 f3cab4b858286b58a48ff8b9466a59c32cc1da033efbc13af3b4f9701d13f7ca
MD5 9d834894a5efad5fcf5b5e9ffd6831ab
BLAKE2b-256 d79842113b770ad41adf105d7d59633580832150d7267d8018d63cde51233f95

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for spaday-0.7.4-cp311-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0953b9a0cf3509f7256261c40af59379cdd237640b12a4fc3c781386d88f4237
MD5 76ea9de19ae91dba8f6d5bdc7e0adb4c
BLAKE2b-256 da248fbc7efd65447ab6015a4b89fde4a327b7663e4148d66eb47dbbf1c079d7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for spaday-0.7.4-cp311-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 eeaa1b4a598c9d0fbb370d9ddb3101f088df2b28a7547430cbcff1807a1ba53f
MD5 4d5e49347f3ed6dc3962dd6ec04bab01
BLAKE2b-256 8e1a7689fa035ff21cde1be370b7540c5cfe1e7d5e896370b7deac9f24f964d3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for spaday-0.7.4-cp311-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7d5ded6e7755ee03d7a1f5675c5454ed95a38b5dab007e9d25524cd58fc737a2
MD5 bb6243ae0580586d07c22f8d9e3da067
BLAKE2b-256 28cd12b1e573fdbebc130d1203d63de7d7e4b981cdba479f87289aebaa515900

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

0.7.7

6 files

0.7.6

6 files

0.7.5

6 files

This release

0.7.4 This release

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