Just shipped NOL36—a base-36 encoding library I built from scratch for the era of edge computing and WebAssembly.
It's a compact, URL-safe encoder that runs everywhere: microcontrollers (no_std), servers, browsers, and WebAssembly modules. Same protocol, same behavior, zero compromises.
What makes it different?
- ⚡ Universal WASM core: Write once, run anywhere. Idiomatic bindings for Rust, JavaScript (CommonJS/ESM/UMD), and Python
- 📦 Intelligent chunking: Handles arbitrary data sizes with built-in integrity checks and protocol versioning
- 🎯 Human-readable output: Pure alphanumeric (0-9, A-Z)—no escaping needed for URLs, filenames, or QR codes
- 🔒 Built-in verification: Per-chunk checksums catch transmission errors before they corrupt your data
Built it for firmware updates over UART, blockchain transactions, IoT sensor data, and anywhere binary data needs to cross trust boundaries reliably.
Check it out on GitHub: nol36
Would love feedback from the WASM/firmware/Protocol Buffers crowd—this is production-ready but always improving.
Top comments (0)