#codec #encode #decode

no-std fraims

A zerocopy codec for encoding and decoding data in no_std environments

2 unstable releases

Uses new Rust 2024

new 0.1.0 May 22, 2025
0.0.0 May 21, 2025

#390 in Embedded development

48 downloads per month

MIT/Apache

70KB
1.5K SLoC

Fraims

Build Status crates.io Crates.io (MSRV) docs.rs Crates.io (Downloads) Crates.io (License)

A zerocopy codec for encoding and decoding data in no_std environments.

This crate is based on embedded_io_async's Read and Write traits.

It's recommended to use embedded_io_adapters if you are using other async Read and Write traits like tokio's AsyncRead and AsyncWrite.

See the examples for more information.

Features

  • log: Enables logging using log.
  • tracing: Enables logging using tracing.
  • defmt: Enables logging using defmt and implements defmt::Format for structs and enums.
  • buffer-early-shift: Moves the bytes in the encode buffer to the start of the buffer after the first successful decoded frame.

License

Licensed under either of

Contribution

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.

Dependencies

~1.1–1.6MB
~30K SLoC