Getting Started

To get started using embedded-wasm you need to find a suitable platform or runtime and the appropriate library for your language of choice.

If your language or platform isn't supported, check out the porting documentation. For more information on building/testing embedded-wasm components, see contributing

Runtimes:

wasm-embedded-rt

A rust wasmtime (or wasm3) based runtime for execution on linux / macOS / windows. Supports mocking on all platforms, with physical hardware access only on linux (for now?).

Crates.io Docs.rs

You can install this with cargo install wasm-embedded-rt or grab a binary from the releases page.

wasm-embedded-lib

A C/wasm3 based runtime designed for embedding, see the Library section for usage.

Crates.io Docs.rs

Typically you'll want to embed this library in your project, either as a git submodule or by copying out the lib directory.

Language Bindings / HALs

Rust

Rust bindings based on embedded-hal.

Crates.io Docs.rs

AssemblyScript

Bindings for AssemblyScript, compiled with asc.

npm

Tools

wasm-embedded-cli

A command line interface for interacting with embedded-wasm capable devices.

Crates.io Docs.rs