8 unstable releases (3 breaking)

0.4.0 Oct 27, 2023
0.3.0 Sep 25, 2023
0.2.0 Jun 15, 2023
0.1.4 Apr 27, 2023
0.1.3 Mar 31, 2023

#1612 in Embedded development

Apache-2.0

93KB
1.5K SLoC

Wasefire

This project aims at making firmware development more accessible and secure by providing a platform for WebAssembly applets. See the book for more information or the quick start section to get started.

⚠️ Disclaimer ⚠️

This is not an officially supported Google product.

This is a research project and should be considered experimental. In particular, the project does not provide any guarantees. However, the project will try to follow the cargo SemVer guidelines for its crates. Currently, all crates are considered unstable.


lib.rs:

This crate provides high-level access to the applet API.

In particular, it provides the following:

  • A panic handler that prints the panic info and traps.
  • A global allocator using the rlsf crate.
  • High-level wrappers around the applet API.

The high-level wrappers provide the following:

  • A safe API. (The applet API requires unsafe.)
  • Rust types like byte slices (instead of their internal representation).
  • Closures for callbacks.

Dependencies

~4MB
~72K SLoC