MVP Runtime
The current MVP is a Chromium-backed local app runtime with a Python frontend host. It proves the app shape before the final Chromium/Blink native binding work is done.
MVP behavior:
- app entry is loaded from
pywee.toml; - Chromium is managed by PyWee and resolved from package data or the runtime cache;
- the app root is served through a local app server so app-local assets resolve;
<script type="python">is discovered and executed for trusted apps;- Python can mutate the live page DOM and register event callbacks;
- Python uses the active Python environment that launched
pywee; - requirements are declared in
pywee.tomland installed throughpywee pip; - app-local Python modules are removed from
sys.modulesafter script execution; - no PyWee permission filtering is applied to Python.
Packaging behavior:
- normal Python wheel builds do not embed Chromium;
pywee chromium installand first run download the locked browser runtime into the PyWee cache;- offline bundled wheels can still be built with
PYWEE_BUNDLE_CHROMIUM=1; - each runtime directory contains
.pywee-chromium.jsonwith provider, platform, revision, URL, and SHA256 metadata; - runtime startup never falls back to a system browser.
Locked distribution platforms: linux-x64, linux-arm64, macos-x64,
macos-arm64, and windows-x64. windows-arm64 remains blocked until a
Chromium runtime provider with complete generated credits is available.
Still needed for the product architecture:
- a Python runtime embedded in Chromium renderer processes;
- direct native DOM/WebIDL bindings;
- DevTools integration for Python;
- production-grade installers and platform packaging;
- platform-specific runtime wheels for all supported OS/architecture pairs.