WebAssembly Binary Toolkit — native CLI tools
Project description
WABT: The WebAssembly Binary Toolkit
A fork of WebAssembly/wabt ported from C++ to Zig and maintained with AI assistance.
100% WebAssembly 3.0 spec conformance — 65,011/65,011 tests passing.
Install
Pre-built binaries are published to GitHub Releases and PyPI. See installation details.
$ dist install cataggar/wabt
$ uv tool install wabt-bin
Tools
- wat2wasm: translate from WebAssembly text format to the WebAssembly binary format
- wasm2wat: the inverse of wat2wasm, translate from the binary format back to the text format (also known as a .wat)
- wasm-objdump: print information about a wasm binary. Similar to objdump.
- wasm-interp: decode and run a WebAssembly binary file using a stack-based interpreter
- wasm-decompile: decompile a wasm binary into readable C-like syntax
- wat-desugar: parse .wat text form and print canonical flat format
- wasm-strip: remove sections of a WebAssembly binary file
- wasm-validate: validate a file in the WebAssembly binary format
- wast2json: convert a file in the wasm spec test format to a JSON file and associated wasm binary files
- wasm-stats: output stats for a module
Building
Requires Zig 0.15.x. No other dependencies.
$ git clone --recursive https://github.com/cataggar/wabt
$ cd wabt
$ zig build
For release builds:
$ zig build -Doptimize=ReleaseSafe
Cross-compilation works out of the box:
$ zig build -Dtarget=aarch64-linux -Doptimize=ReleaseSafe
$ zig build -Dtarget=aarch64-macos -Doptimize=ReleaseSafe
$ zig build -Dtarget=x86_64-windows -Doptimize=ReleaseSafe
Running tests
Unit tests:
$ zig build test
Wasm 3.0 spec tests:
$ zig build -Doptimize=ReleaseSafe
$ ./zig-out/bin/spectest-interp third_party/testsuite/i32.wast
Wasm 3.0 proposals
All ratified Wasm 3.0 proposals are enabled by default:
| Proposal | Status |
|---|---|
| Exception handling | ✓ |
| GC (garbage collection) | ✓ |
| Memory64 | ✓ |
| Multi-memory | ✓ |
| Tail calls | ✓ |
| Relaxed SIMD | ✓ |
| Extended const | ✓ |
| SIMD | ✓ |
| Bulk memory | ✓ |
| Reference types | ✓ |
| Multi-value | ✓ |
| Annotations | ✓ |
License
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 Distributions
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 wabt_bin-2.1.0-py3-none-win_arm64.whl.
File metadata
- Download URL: wabt_bin-2.1.0-py3-none-win_arm64.whl
- Upload date:
- Size: 839.2 kB
- Tags: Python 3, Windows ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
30eea6cc64ba0c0565d2a9ffbefdbe37f8c5b275e015977647136ab5e4fcff20
|
|
| MD5 |
019640cf9aca10c64b12302da6372ba5
|
|
| BLAKE2b-256 |
62ceb3a4c8b65b62d67e368b69495295c88d477b3aeee5ae15dd8dec9446eb66
|
Provenance
The following attestation bundles were made for wabt_bin-2.1.0-py3-none-win_arm64.whl:
Publisher:
pypi.yml on cataggar/wabt
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wabt_bin-2.1.0-py3-none-win_arm64.whl -
Subject digest:
30eea6cc64ba0c0565d2a9ffbefdbe37f8c5b275e015977647136ab5e4fcff20 - Sigstore transparency entry: 1293484183
- Sigstore integration time:
-
Permalink:
cataggar/wabt@8a77967f8602150e0a416b8c1a763e4c52363715 -
Branch / Tag:
refs/heads/zig - Owner: https://github.com/cataggar
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@8a77967f8602150e0a416b8c1a763e4c52363715 -
Trigger Event:
workflow_run
-
Statement type:
File details
Details for the file wabt_bin-2.1.0-py3-none-win_amd64.whl.
File metadata
- Download URL: wabt_bin-2.1.0-py3-none-win_amd64.whl
- Upload date:
- Size: 884.8 kB
- Tags: Python 3, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fd7ee3521a5e7464086bd756e02918e37f202d21f137dcc6d548d156f6aa2c57
|
|
| MD5 |
3f554974bfa871a3f691420b60da1612
|
|
| BLAKE2b-256 |
a8a6f3e953d873554403ec883021a10a736574f3c943209e1a310080deffad80
|
Provenance
The following attestation bundles were made for wabt_bin-2.1.0-py3-none-win_amd64.whl:
Publisher:
pypi.yml on cataggar/wabt
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wabt_bin-2.1.0-py3-none-win_amd64.whl -
Subject digest:
fd7ee3521a5e7464086bd756e02918e37f202d21f137dcc6d548d156f6aa2c57 - Sigstore transparency entry: 1293484224
- Sigstore integration time:
-
Permalink:
cataggar/wabt@8a77967f8602150e0a416b8c1a763e4c52363715 -
Branch / Tag:
refs/heads/zig - Owner: https://github.com/cataggar
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@8a77967f8602150e0a416b8c1a763e4c52363715 -
Trigger Event:
workflow_run
-
Statement type:
File details
Details for the file wabt_bin-2.1.0-py3-none-musllinux_1_1_x86_64.whl.
File metadata
- Download URL: wabt_bin-2.1.0-py3-none-musllinux_1_1_x86_64.whl
- Upload date:
- Size: 816.7 kB
- Tags: Python 3, musllinux: musl 1.1+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
095bc691718c82f3f0e0fac562f65f6daa649291c70d4e4daf753b21af06abb2
|
|
| MD5 |
b5ed84f8576b7f07d6a59ff8115becca
|
|
| BLAKE2b-256 |
c25ec195c694593fa67663eb0d03303b72ae0dc88b759938d408c374ec619f36
|
Provenance
The following attestation bundles were made for wabt_bin-2.1.0-py3-none-musllinux_1_1_x86_64.whl:
Publisher:
pypi.yml on cataggar/wabt
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wabt_bin-2.1.0-py3-none-musllinux_1_1_x86_64.whl -
Subject digest:
095bc691718c82f3f0e0fac562f65f6daa649291c70d4e4daf753b21af06abb2 - Sigstore transparency entry: 1293484333
- Sigstore integration time:
-
Permalink:
cataggar/wabt@8a77967f8602150e0a416b8c1a763e4c52363715 -
Branch / Tag:
refs/heads/zig - Owner: https://github.com/cataggar
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@8a77967f8602150e0a416b8c1a763e4c52363715 -
Trigger Event:
workflow_run
-
Statement type:
File details
Details for the file wabt_bin-2.1.0-py3-none-musllinux_1_1_aarch64.whl.
File metadata
- Download URL: wabt_bin-2.1.0-py3-none-musllinux_1_1_aarch64.whl
- Upload date:
- Size: 796.7 kB
- Tags: Python 3, musllinux: musl 1.1+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bcbceb4601bccd47b87635fc7e53f1b8f037c3060fa71163f78834707c036369
|
|
| MD5 |
7471f238cd600f74bddefddd62b89ab8
|
|
| BLAKE2b-256 |
bbb2e1a8688ce05dc8dd3d715bcb03229048c6882378c2ab075e51679f940f92
|
Provenance
The following attestation bundles were made for wabt_bin-2.1.0-py3-none-musllinux_1_1_aarch64.whl:
Publisher:
pypi.yml on cataggar/wabt
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wabt_bin-2.1.0-py3-none-musllinux_1_1_aarch64.whl -
Subject digest:
bcbceb4601bccd47b87635fc7e53f1b8f037c3060fa71163f78834707c036369 - Sigstore transparency entry: 1293484369
- Sigstore integration time:
-
Permalink:
cataggar/wabt@8a77967f8602150e0a416b8c1a763e4c52363715 -
Branch / Tag:
refs/heads/zig - Owner: https://github.com/cataggar
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@8a77967f8602150e0a416b8c1a763e4c52363715 -
Trigger Event:
workflow_run
-
Statement type:
File details
Details for the file wabt_bin-2.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: wabt_bin-2.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 816.8 kB
- Tags: Python 3, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c9b5011dab9e1f8a7c04c1cd688fba773a257b905e2a6c6b8e79ff92a2569344
|
|
| MD5 |
d9b05b0e4a157d1ca499cf51861e6174
|
|
| BLAKE2b-256 |
f8123b72a8f7750fa7de77d1246aa4c2ada98b44a86e7eaa1c69f6c5d80a6d12
|
Provenance
The following attestation bundles were made for wabt_bin-2.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
pypi.yml on cataggar/wabt
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wabt_bin-2.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
c9b5011dab9e1f8a7c04c1cd688fba773a257b905e2a6c6b8e79ff92a2569344 - Sigstore transparency entry: 1293484149
- Sigstore integration time:
-
Permalink:
cataggar/wabt@8a77967f8602150e0a416b8c1a763e4c52363715 -
Branch / Tag:
refs/heads/zig - Owner: https://github.com/cataggar
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@8a77967f8602150e0a416b8c1a763e4c52363715 -
Trigger Event:
workflow_run
-
Statement type:
File details
Details for the file wabt_bin-2.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: wabt_bin-2.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 796.7 kB
- Tags: Python 3, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
435db8facaa8d552b62540267064410be135ba9880c45bb223db86da518c50cc
|
|
| MD5 |
dd558895fa9f950532d7fcc6ff556b01
|
|
| BLAKE2b-256 |
50ee9b98e4f3e168e007630229a96560be2c7b240388a0ed6d400c038583e85b
|
Provenance
The following attestation bundles were made for wabt_bin-2.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:
Publisher:
pypi.yml on cataggar/wabt
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wabt_bin-2.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl -
Subject digest:
435db8facaa8d552b62540267064410be135ba9880c45bb223db86da518c50cc - Sigstore transparency entry: 1293484263
- Sigstore integration time:
-
Permalink:
cataggar/wabt@8a77967f8602150e0a416b8c1a763e4c52363715 -
Branch / Tag:
refs/heads/zig - Owner: https://github.com/cataggar
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@8a77967f8602150e0a416b8c1a763e4c52363715 -
Trigger Event:
workflow_run
-
Statement type:
File details
Details for the file wabt_bin-2.1.0-py3-none-macosx_11_0_arm64.whl.
File metadata
- Download URL: wabt_bin-2.1.0-py3-none-macosx_11_0_arm64.whl
- Upload date:
- Size: 773.1 kB
- Tags: Python 3, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ae3c14fab5c53e3d5ed5306c8267bc1f5f678636c1db538fe012e598ad062753
|
|
| MD5 |
7cf5eddd9e0f3e6942514219bc42c776
|
|
| BLAKE2b-256 |
89301afc58dc277b3f1af76685e07aaf905a62b30abc698ae913c24904a27bb9
|
Provenance
The following attestation bundles were made for wabt_bin-2.1.0-py3-none-macosx_11_0_arm64.whl:
Publisher:
pypi.yml on cataggar/wabt
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wabt_bin-2.1.0-py3-none-macosx_11_0_arm64.whl -
Subject digest:
ae3c14fab5c53e3d5ed5306c8267bc1f5f678636c1db538fe012e598ad062753 - Sigstore transparency entry: 1293484402
- Sigstore integration time:
-
Permalink:
cataggar/wabt@8a77967f8602150e0a416b8c1a763e4c52363715 -
Branch / Tag:
refs/heads/zig - Owner: https://github.com/cataggar
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@8a77967f8602150e0a416b8c1a763e4c52363715 -
Trigger Event:
workflow_run
-
Statement type:
File details
Details for the file wabt_bin-2.1.0-py3-none-macosx_10_9_x86_64.whl.
File metadata
- Download URL: wabt_bin-2.1.0-py3-none-macosx_10_9_x86_64.whl
- Upload date:
- Size: 826.8 kB
- Tags: Python 3, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ae0fb4f6bbf4a6b41fe4306d4b2b00e21b670183296b0f524db69a3d86116074
|
|
| MD5 |
2d67cd875aa2679d2bd35f1cc37d30e1
|
|
| BLAKE2b-256 |
4b2bcfe8eafcd4c7d938bfc30a1ac3773a21d03d4d50135574419949c3e88a25
|
Provenance
The following attestation bundles were made for wabt_bin-2.1.0-py3-none-macosx_10_9_x86_64.whl:
Publisher:
pypi.yml on cataggar/wabt
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wabt_bin-2.1.0-py3-none-macosx_10_9_x86_64.whl -
Subject digest:
ae0fb4f6bbf4a6b41fe4306d4b2b00e21b670183296b0f524db69a3d86116074 - Sigstore transparency entry: 1293484304
- Sigstore integration time:
-
Permalink:
cataggar/wabt@8a77967f8602150e0a416b8c1a763e4c52363715 -
Branch / Tag:
refs/heads/zig - Owner: https://github.com/cataggar
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@8a77967f8602150e0a416b8c1a763e4c52363715 -
Trigger Event:
workflow_run
-
Statement type: