macOS
brew install wasm3local Homebrew formula metadata
sudo port install wasm3MacPorts ports tree · lang/wasm3/Portfile · source: api.github.com
brew
High performance WebAssembly interpreter. Version 0.5.0 via Homebrew; verified 2026-06-15.
install
brew install wasm3local Homebrew formula metadata
sudo port install wasm3MacPorts ports tree · lang/wasm3/Portfile · source: api.github.com
overview
High performance WebAssembly interpreter
history
Wasm3 is a compact WebAssembly interpreter written in C, positioned by its maintainers as a fast and highly portable runtime rather than a JIT compiler. Its niche is running Wasm in places where engines such as V8, Wasmtime, or Wasmer are too large, unavailable, or unsuitable because dynamic code generation is restricted.
The source tree identifies Wasm3 as a high-performance WebAssembly interpreter with 2019 copyrights for Steven Massey and Volodymyr Shymanskyy. The project documentation explains that its M3 interpreter strategy existed before this specific Wasm runtime and was adapted because the approach fit WebAssembly's bytecode structure.
The interpreter documentation describes M3 as a C implementation using a novel high-performance topology. Instead of emphasizing ahead-of-time or just-in-time compilation, Wasm3 translates WebAssembly opcodes into internal operations intended to execute efficiently in an interpreter, making it a useful counterpoint to the compiler-heavy runtimes that dominate server-side Wasm.
Wasm3's adoption story is strongest in embedded and constrained-device circles. The companion Arduino repository says the runtime needs roughly 64 KB of flash and 10 KB of RAM for minimal functionality and lists devices such as ESP32, ESP8266, Arduino MKR, Particle, ST Nucleo, BluePill, Nordic nRF5, and Teensy as verified targets.
The main repository also frames Wasm3 as universal, with topics covering embedded, IoT, serverless, containers, sandboxing, smart contracts, and edge computing. That breadth reflects its role as a small embeddable engine: developers use it when they want Wasm as a portable plugin or scripting format but cannot afford a heavier optimizing runtime.
Command-line users run wasm3 against a .wasm file to execute a module locally. Embedded users more often link the C runtime into firmware or an application host, load a Wasm module from flash, storage, or a network update path, and expose only a small set of host functions to the guest module.
Package-nerd usage tends to compare Wasm3 with WAMR, wasmi, wasm-interp, and JIT runtimes. Wasm3 is chosen for portability and low memory ceilings; Wasmtime or Wasmer are usually chosen when standard WASI coverage, component-model support, or peak JIT/AOT performance matters more.
Wasm3 is significant because it keeps the interpreter design space visible in a WebAssembly ecosystem often led by optimizing compilers. For package maintainers, it is a reminder that the same .wasm artifact can target browsers, server runtimes, and tiny boards, but that the host ABI and resource budget determine which runtime is realistic.
It also matters as a minimal embeddable dependency: a C runtime with a CLI and microcontroller examples is easier to fit into unusual packaging environments than a larger Rust or C++ runtime stack.
security posture
generalized runtime or code generation signal.
yellow risk · medium confidence · runtime
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
wasm3 | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://github.com/wasm3/wasm3
install metadata
| Package key | brew:wasm3 |
|---|---|
| Version | 0.5.0 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/wasm3 |
| Homepage | https://twitter.com/wasm3_engine |
| Repository | https://github.com/wasm3/wasm3 |
| Upstream docs | https://github.com/wasm3/wasm3#readme |
| License | MIT |
| Source archive | https://github.com/wasm3/wasm3/archive/refs/tags/v0.5.0.tar.gz |
| Last updated | 2026-06-15T10:21:23-04:00 |
| Pulse | updated |
| Dependencies | uvwasi |
| Build dependencies | cmake |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | wasm3 |
| Version Scheme | 0 |
| Revision | 0 |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
wasm3
sudo port install wasm3source trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.