Collected sources and patterns will appear here. Add from search, explore, or the patterns library.
A high-performance, specification-compliant WebAssembly interpreter designed for embedded systems and environments where JIT compilation is unavailable or undesirable.
Utility
stars
2,099
forks
348
wasmi is a mature (8+ years old) and critical infrastructure component within the Rust and WebAssembly ecosystems. Its primary moat is its specialized role as an interpreter rather than a JIT compiler; this makes it the de facto choice for environments with strict memory constraints, non-executable memory pages (like iOS or certain embedded chips), and blockchain runtimes (it is a core dependency of the Polkadot/Substrate ecosystem). With 2,000+ stars and 300+ forks, it has significant 'data gravity' in the form of production hardening and security audits. While competitors like Wasmtime (Bytecode Alliance) and WAMR (Intel/Foundation) exist, wasmi occupies a specific niche for pure-Rust, lightweight embedding. Frontier labs are unlikely to compete here as this is low-level systems plumbing far removed from LLM development. The primary risk is long-term consolidation of Wasm standards that might favor heavier runtimes, but wasmi's footprint in deterministic execution (smart contracts) makes it very difficult to displace.
TECH STACK
INTEGRATION
library_import
READINESS
The reusable building blocks distilled from this project — each a mechanism you could lift into your own.
Float -> Float
Map all floating-point arithmetic outputs that result in a NaN value to a single, consistent, platform-independent bit pattern.
Tuple<VMState, FuelBudget> -> Either<Tuple<VMState, FuelBudget>, OutOfFuelTrap>
Decrement a configured execution budget based on instruction weights during virtual machine execution, triggering a trap if the budget is exhausted.