msgpack_stream
Lightweight streaming MessagePack library for C++ and Dart.
Features
- Streaming - Encode and decode with constant memory
- Complete - Full MessagePack spec support
- Lightweight - Zero external dependencies
- Fast - Minimal overhead
Language Implementations
| Language | Description | Documentation | Benchmark |
|---|---|---|---|
| C++ | Zero-copy, allocation-free for embedded systems | CPP.md | 2-10x faster than msgpack-c |
| Dart | Streaming support, zero dependencies | DART.md | Comparable to msgpack_dart |
Benchmarks
100,000 iterations, Apple M3 Max.
C++ Packing (ops/sec, higher is better)
| Payload | msgpack_stream | msgpack-c | Speedup |
|---|---|---|---|
| Small (3 fields) | 49.7M | 11.1M | 4.5x |
| Medium (6 fields, floats) | 51.4M | 5.1M | 10.1x |
| Large (100 items) | 225k | 130k | 1.7x |
C++ Unpacking (ops/sec, higher is better)
| Payload | msgpack_stream | msgpack-c | Speedup |
|---|---|---|---|
| Small (3 fields) | 23.6M | 8.2M | 2.9x |
| Medium (6 fields, floats) | 9.1M | 4.4M | 2.1x |
| Large (100 items) | 605k | 249k | 2.4x |
Quick Links
License
This project is licensed under the MIT License - see the LICENSE file for details.
Copyright (c) 2025-2026 Flextronic GmbH