PuePy - PyScript Frontend Framework
➡️ Project Website 📝 Project Documentation
PuePy is a lightweight web framework that uses WebAssembly via PyScript to put Python right in your browser with all the modern conveniences of a web framework, but none of the headaches of Webpack, NPM or even JavaScript.
- Reactive data binding with component-based architecture
- Single Page App (SPA) router included
- No build layer: direct execution like other Python projects
- Choice of full Pyodide or Micropython
🐒 Try a demo app
See ExpenseLemur.com and the Expense Lemur Github Repo for a demonstration of what PuePy is capable of.
🧑💻 See some code
from puepy import Page, Application, t
app = Application()
@app.page()
class Hello(Page):
def initial(self):
return dict(name="")
def populate(self):
with t.div(classes=["container", "mx-auto", "p-4"]):
t.h1("Welcome to PyScript", classes=["text-xl", "pb-4"])
if self.state["name"]:
t.p(f"Hello there, {self.state['name']}")
else:
t.p("Why don't you tell me your name?")
t.input(placeholder="Enter your name", bind="name")
t.button("Continue", classes="btn btn-lg", on_click=self.on_button_click)
def on_button_click(self, event):
print("Button clicked") # This logs to console
app.mount("#app")
Learn
- Project Website: puepy.dev
- Documentation: docs.puepy.dev
License
PuePy is licensed under the Apache 2 license, for your coding convenience.
Metadata
Release files for puepy 0.6.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| puepy-0.6.5.tar.gz | 26.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| puepy-0.6.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 54.8 kB
Release files / puepy-0.6.5.tar.gz
| Download URL | puepy-0.6.5.tar.gz |
|---|---|
| Size | 26.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5145fc9d7a7b7762327979d31d9a16a9dbb2389a5092ac78db45935d9b92f5bf
|
|
BLAKE2b-256 checksum How to use checksums |
6084f9184dae016504a81c9055d7e0bfa84bf6e731d6ca45b9a9f06178f972bf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
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 Feb 22, 2025.
Transparency logRelease files / puepy-0.6.5-py3-none-any.whl
| Download URL | puepy-0.6.5-py3-none-any.whl |
|---|---|
| Size | 28.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d41e19193b39c01d4af87656bd3335bdcf23c48c4b6f79e0f3c50b6581e7f711
|
|
BLAKE2b-256 checksum How to use checksums |
759d95bd54b735f887ba778b0ad0ebd8356df7791b2129c65c5a85f39892e521
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
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 Feb 22, 2025.
Transparency log