nanondef 0.0.1

A no-std, no-alloc, minimal NDEF encoding and decoding library.
Documentation

crates.io docs.rs

nanondef is a lightweight, allocation-optional library for working with NFC Forum NDEF messages, Capability Containers (CC), TLV blocks, and various record payloads.

It is designed for:

  • Embedded systems
  • Firmware and NFC-tag readers/writers
  • High-level Rust applications requiring a safe, efficient NDEF stack
  • Environments requiring deterministic memory usage (e.g., heapless)

The library never allocates unless the "std" or "alloc" feature is enabled.


Features

  • Zero-copy decoding from &[u8]
  • Optional allocation or heapless
  • Stable, minimal API surface
  • Capability Container (CC) parsing
  • Typed payload decoding (URI, raw bytes, and user-defined payloads)
  • NDEF record validation
  • TLV block decoding
  • Full serde support for all public types
  • WASM support
  • Companion C FFI bindings via the nanondef-sys crate

License

MIT