| Continuous Integration | Test Coverage | Documentation | Crates.io |
|---|---|---|---|
Wasmi is an efficient and lightweight WebAssembly interpreter with a focus on constrained and embedded systems.
- Simple, correct and deterministic execution of WebAssembly.
- Efficient and cross-platform WebAssembly runtime for
no_stdembedded environments. - Compiler/JIT bomb resisting translation.
- Loosely mirrors the Wasmtime API to act as drop-in replacement.
- 100% WebAssembly spec testsuite compliance.
- Built-in support for fuel metering.
- Supports the official Wasm C-API.
Wasmi is suitable for safety critical use cases and has been audited twice.
| Wasmi Version(s) | Auditor | Contractor | Report |
|---|---|---|---|
0.36.0-0.38.0 |
Runtime Verification Inc. | Stellar Development Foundation | |
0.31.0 |
SRLabs | Parity Technologies |
- π Usage Guide: learn how to use the Wasmi API properly.
- π οΈ Development Guide: learn how to develop for Wasmi.
- β¨ Crate Features: learn about
wasmicrate features.
| WebAssembly Proposal | WebAssembly Proposal | |||||
|---|---|---|---|---|---|---|
| β | mutable-global |
β₯ 0.14.0 |
β | custom-page-sizes |
β₯ 0.41.0 |
|
| β | saturating-float-to-int |
β₯ 0.14.0 |
β | memory64 |
β₯ 0.41.0 |
|
| β | sign-extension |
β₯ 0.14.0 |
β | wide-arithmetic |
β₯ 0.42.0 |
|
| β | multi-value |
β₯ 0.14.0 |
β | simd |
β₯ 0.43.0 |
|
| β | bulk-memory |
β₯ 0.24.0 |
β | relaxed-simd |
β₯ 0.44.0 |
|
| β | reference-types |
β₯ 0.24.0 |
π | function-references |
Tracking Issue | |
| β | tail-calls |
β₯ 0.28.0 |
π | gc |
Tracking Issue | |
| β | extended-const |
β₯ 0.29.0 |
π | threads |
Tracking Issue | |
| β | multi-memory |
β₯ 0.37.0 |
π | exception-handling |
Tracking Issue |
| Embeddings | ||
|---|---|---|
| β | WASI | WASI (wasip1) support via the wasmi_wasi crate. |
| β | C-API | Official Wasm C-API support via the wasmi_c_api_impl crate. |
If you want your project on this list please inform me about you project and how Wasmi is used.
Special thanks to the past and present sponsors of the Wasmi project.
|
Sponsoring since Oct. 2024
|
Sponsored until Oct. 2024
|
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or https://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or https://opensource.org/licenses/MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
