Pyodide 314.0: Python packages can now publish WebAssembly wheels to PyPI
1–10 of 44 posts
Re: Pyodide 314.0: Python packages can now publish WebAssembly wheels to PyPI
#2Re: Pyodide 314.0: Python packages can now publish WebAssembly wheels to PyPI
#3This means we can now take any C/Rust/whatever extension for Python, compile that as a `.wasm` extension, and then load it directly in browser Pyodide projects using:
await micropip.install("package-on-pypi")
import package_name
Here's how to try the new feature out. Visit https://pyodide.org/en/stable/console.html and type: import micropip
await micropip.install("pydantic_core")
import pydantic_core
That gets you this WASM wheel: https://pypi.org/project/pydantic_core/#pydantic_core-2.47.0...You can tell that it's got compiled code in (and not just Python) by running:
pydantic_core._pydantic_core
I get this: Re: Pyodide 314.0: Python packages can now publish WebAssembly wheels to PyPI
#4Re: Pyodide 314.0: Python packages can now publish WebAssembly wheels to PyPI
#5I presume this works (will work) also for JupyterLite that is based on Pyodide ? Would be great if it helped getting the latest OpenCV-python version [0] and it's dnn goodies being available on a zero-install client side Notebook ! [0] https://news.ycombinator.com/item?id=48421858
Re: Pyodide 314.0: Python packages can now publish WebAssembly wheels to PyPI
#6Re: Pyodide 314.0: Python packages can now publish WebAssembly wheels to PyPI
#7Re: Pyodide 314.0: Python packages can now publish WebAssembly wheels to PyPI
#8Re: Pyodide 314.0: Python packages can now publish WebAssembly wheels to PyPI
#9I've been looking forward to this for ages! This means we can now take any C/Rust/whatever extension for Python, compile that as a `.wasm` extension, and then load it directly in browser Pyodide projects using: await micropip.install("package-on-pypi") import package_name Here's how to try the new feature out. Visit https://pyodide.org/en/stable/console.html and type: import micropip await micropip.install("pydantic_…
Here's the package: https://pypi.org/project/luau-wasm/
import micropip
await micropip.install("luau-wasm")
import luau_wasm
print(luau_wasm.execute(r'''
local animals = {"fox", "owl", "frog", "rabbit"}
table.sort(animals, function(a, b) return #a
And an interactive demo page where you can try it out: https://simonw.github.io/luau-wasm/Wrote about this in more detail on my blog: https://simonwillison.net/2026/Jun/13/publishing-wasm-wheels...
Re: Pyodide 314.0: Python packages can now publish WebAssembly wheels to PyPI
#10Executing normal python programs inside a cpython vm inside a wasm context inside a javascript process inside a sandbox inside a browser is - genuinely - extremely exciting! (Might as well run the browser inside a container inside a VM while you're at it though.)