Wasmer Runtime
The Wasmer Runtime runs WebAssembly modules and packages from the Wasmer Registry in lightweight, capability-based sandboxes. Use it as a command-line tool or embed it directly in a JavaScript or Python application.
| Interface | Best for | Install |
|---|---|---|
| Wasmer CLI | Running packages from a terminal or script | curl https://get.wasmer.io -sSfL | sh |
| JavaScript SDK | Node.js and browser applications | npm install @wasmer/sdk |
| Python SDK | Python applications and AI agents | python -m pip install wasmer-sdk |
All three interfaces use the same Wasmer packages and WASIX runtime. The SDKs also expose a shared sandbox model for composing packages, files, environment variables, networking, and long-running processes inside a host application.
First steps
Start with one package, then choose the interface that fits your host application.
Features
- Secure by default. No file, network, or environment access, unless explicitly enabled.
- Fast. Run WebAssembly at near-native speeds.
- Embeddable. Run sandboxes in JavaScript, Python, Rust, and other host applications without a separate daemon.
- Compliant with the latest WebAssembly proposals (SIMD, Reference Types, Threads, …)
Backends
The Wasmer Runtime supports multiple backends, depending on your needs:
Wasmer backends
- Singlepass: A single-pass compiler for fast compilation times and low memory usage.
- Cranelift: A fast compiler backend with a focus on compile times, and runtime performance.
- LLVM: A compiler backend that uses LLVM for optimization and code generation.
Integration backends
- Browser: it allows running Wasmer fully in the browser (via
wasm-bindgen). - V8: it allows running Wasmer using the WebAssembly engine inside V8 (can run in interpreter mode or with JIT)
Last updated on