11 releases (6 breaking)

0.7.0 Nov 12, 2024
0.6.0 Jul 23, 2024
0.5.0 Feb 27, 2024
0.4.0 Oct 27, 2023
0.1.3 Mar 31, 2023

#580 in WebAssembly

Download history 1/week @ 2024-11-24 16/week @ 2024-12-01 19/week @ 2024-12-08

558 downloads per month

Apache-2.0

155KB
2.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

~1.7–2.7MB
~51K SLoC