Client-side Python SPA framework via Pyodide
Project description
Wybthon
Wybthon is an experimental client-side web framework written in Python, inspired by popular JavaScript frameworks like React and Angular. The goal is to provide a Pythonic approach to building interactive web applications.
Installation
pip install wybthon
Use in Pyodide (micropip)
import micropip
await micropip.install("wybthon")
import wybthon as wy
Project Structure
.
├── README.md
├── LICENSE
├── pyproject.toml
├── requirements.txt
├── src/
│ └── wybthon/
│ ├── __init__.py
│ ├── component.py
│ ├── context.py
│ ├── dev.py
│ ├── dom.py
│ ├── events.py
│ ├── forms.py
│ ├── reactivity.py
│ ├── router.py
│ └── vdom.py
├── docs/
│ ├── index.md
│ ├── getting-started.md
│ ├── api.md
│ └── examples.md
├── examples/
│ └── demo/
│ ├── index.html
│ ├── bootstrap.js
│ ├── demo.py
│ └── child_component.html
└── tests/
├── test_context.py
├── test_dev.py
├── test_forms.py
├── test_reactivity.py
└── test_validators.py
- src/wybthon/: Core library package modules.
- docs/: Documentation sources for MkDocs.
- examples/: Demo running in the browser via Pyodide.
- tests/: Unit tests.
Getting Started
To run the example application:
-
Clone the repository:
git clone https://github.com/wybthon/wybthon.git cd wybthon
-
Start a simple web server from the repo root:
python -m http.server
-
Open your browser to
http://localhost:8000/examples/demo/index.html.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wybthon-0.3.0.tar.gz.
File metadata
- Download URL: wybthon-0.3.0.tar.gz
- Upload date:
- Size: 27.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2979bdf535275e2ec97055caf65b13f0146d295f5dc769cc4080363d51b30c15
|
|
| MD5 |
553590e3042655f8f6f02a83c66cba90
|
|
| BLAKE2b-256 |
c1eec7b88ba826a957a9451ac7d5dc34209bbde450c50cee5b3db286220464f6
|
Provenance
The following attestation bundles were made for wybthon-0.3.0.tar.gz:
Publisher:
release.yml on wybthon/wybthon
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wybthon-0.3.0.tar.gz -
Subject digest:
2979bdf535275e2ec97055caf65b13f0146d295f5dc769cc4080363d51b30c15 - Sigstore transparency entry: 591713710
- Sigstore integration time:
-
Permalink:
wybthon/wybthon@c4f62588f4141eeeba5509eb51871356964fb5dc -
Branch / Tag:
refs/tags/v0.3.0 - Owner: https://github.com/wybthon
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@c4f62588f4141eeeba5509eb51871356964fb5dc -
Trigger Event:
push
-
Statement type:
File details
Details for the file wybthon-0.3.0-py3-none-any.whl.
File metadata
- Download URL: wybthon-0.3.0-py3-none-any.whl
- Upload date:
- Size: 26.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9ae1d1c43a0cb15f1f0c201c85a0b29c658e77ea9a68869d9c99cc106919b9d8
|
|
| MD5 |
097420a06f19b3560275f72b183da890
|
|
| BLAKE2b-256 |
0cfe134252af36eab2cef947d7a529863bddcc1d4af0803329b58141f5b9f418
|
Provenance
The following attestation bundles were made for wybthon-0.3.0-py3-none-any.whl:
Publisher:
release.yml on wybthon/wybthon
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wybthon-0.3.0-py3-none-any.whl -
Subject digest:
9ae1d1c43a0cb15f1f0c201c85a0b29c658e77ea9a68869d9c99cc106919b9d8 - Sigstore transparency entry: 591713712
- Sigstore integration time:
-
Permalink:
wybthon/wybthon@c4f62588f4141eeeba5509eb51871356964fb5dc -
Branch / Tag:
refs/tags/v0.3.0 - Owner: https://github.com/wybthon
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@c4f62588f4141eeeba5509eb51871356964fb5dc -
Trigger Event:
push
-
Statement type: