Tool to package Python applications as WebAssembly components
Project description
componentize-py
This is a prototype of a tool to convert a Python application to a WebAssembly component. It takes the following as input:
- a WIT file or directory
- the name of a WIT world defined in the above file or directory
- the name of a Python module which targets said world
- a list of directories in which to find the Python module and its dependencies
The output is a component which may be run using
e.g. wasmtime. See the
tests for examples.
Build Prerequisites
- WASI SDK v16 (later versions may work, but have not yet been tested)
- Install this to
/opt/wasi-sdk, or else specify an alternative location via theWASI_SDK_PATHenvironment variable
- Install this to
- Tools needed to build CPython (e.g. Make, Clang, etc.)
- Rust v1.68 or later, including the
wasm32-wasiandwasm32-unknown-unkowntargets
Building and Running
cargo run --release -- --help
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 Distributions
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 componentize_py-0.2.0.tar.gz.
File metadata
- Download URL: componentize_py-0.2.0.tar.gz
- Upload date:
- Size: 67.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f7551ee180a4a42fcbbd6897bf2550abde358e3c52c44d42811e84fa30e5b3d5
|
|
| MD5 |
26ec8ff24fbc3f02ba51d5c269e210a5
|
|
| BLAKE2b-256 |
6eae4451dd240b40a3ea3e5cefb8991cfd14b4a3b43d757b65527407efdd81e5
|
File details
Details for the file componentize_py-0.2.0-cp311-abi3-win_amd64.whl.
File metadata
- Download URL: componentize_py-0.2.0-cp311-abi3-win_amd64.whl
- Upload date:
- Size: 13.1 MB
- Tags: CPython 3.11+, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
74e43c67196729a6b664c8ce90bb87aee40a593ffe7d1cd6d4421fb7be647335
|
|
| MD5 |
9bd5f09812595b4021eaf4b54c3597ff
|
|
| BLAKE2b-256 |
5516205bcd4be27bcffc4da0949bec92cbecb45a42f851a32437ab1cf3bae710
|
File details
Details for the file componentize_py-0.2.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: componentize_py-0.2.0-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 15.9 MB
- Tags: CPython 3.11+, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6cb699dae137a0e85c47e95df8625ecac827bd6d0a429ff706b138deeed55c8d
|
|
| MD5 |
455eebd3110fa57d3f22ee8a9edbbc4d
|
|
| BLAKE2b-256 |
dc7d460e079a24fe7d14a0a027407e01adef2e8593d8572b4b40a7383e0d8d58
|
File details
Details for the file componentize_py-0.2.0-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: componentize_py-0.2.0-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 15.6 MB
- Tags: CPython 3.11+, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e677348ef8ba968a1374880375b2a7f17139723e5d4e1a782331e838094dbdbb
|
|
| MD5 |
0a00e74ac16662dbcd96477a88bae3fd
|
|
| BLAKE2b-256 |
6d882545aa3ea96cec594ce9bc9d2944cee1feb70da996d779d1ac66fa23fc58
|
File details
Details for the file componentize_py-0.2.0-cp311-abi3-macosx_11_0_arm64.whl.
File metadata
- Download URL: componentize_py-0.2.0-cp311-abi3-macosx_11_0_arm64.whl
- Upload date:
- Size: 13.7 MB
- Tags: CPython 3.11+, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
00a229c9228db1975acc7660ba24c0841599a54f3e81af0abc7b6735b13dc94d
|
|
| MD5 |
667c4c6c9600554e8f02a3e2dcbf44e2
|
|
| BLAKE2b-256 |
0dcbc7140a04574f7ca5701c3300568f3f9e187e1cb2c67244708279b52580f5
|
File details
Details for the file componentize_py-0.2.0-cp311-abi3-macosx_10_7_x86_64.whl.
File metadata
- Download URL: componentize_py-0.2.0-cp311-abi3-macosx_10_7_x86_64.whl
- Upload date:
- Size: 14.4 MB
- Tags: CPython 3.11+, macOS 10.7+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a8ecab23edab2834520d61b1eb5368db64f1c1c92170f03195caa5892918d1fd
|
|
| MD5 |
8f6801c9130eec62e4f82d402c9de633
|
|
| BLAKE2b-256 |
70d279f0e866156454ecf400b62a925fdf0250c7daba283f101f9537e18bfd55
|