9 releases (5 stable)

25.2.10 Feb 11, 2025
25.1.24 Jan 25, 2025
24.12.23 Dec 23, 2024
2.0.0 May 13, 2021
0.1.0 May 12, 2020

#719 in Encoding

Download history 18074/week @ 2024-11-21 14069/week @ 2024-11-28 18809/week @ 2024-12-05 17813/week @ 2024-12-12 9268/week @ 2024-12-19 5890/week @ 2024-12-26 15709/week @ 2025-01-02 18769/week @ 2025-01-09 17512/week @ 2025-01-16 18486/week @ 2025-01-23 21740/week @ 2025-01-30 19600/week @ 2025-02-06 16053/week @ 2025-02-13 17302/week @ 2025-02-20 17233/week @ 2025-02-27 18040/week @ 2025-03-06

72,629 downloads per month
Used in 95 crates (33 directly)

Apache-2.0

125KB
2.5K SLoC

Flexbuffers

Flexbuffers is a schema-less binary format developed at Google. FlexBuffers can be accessed without parsing, copying, or allocation. This is a huge win for efficiency, memory friendly-ness, and allows for unique use cases such as mmap-ing large amounts of free-form data.

FlexBuffers' design and implementation allows for a very compact encoding, with automatic sizing of containers to their smallest possible representation (8/16/32/64 bits). Many values and offsets can be encoded in just 8 bits.

FlexBuffers supports Serde for automatically serializing Rust data structures into its binary format.

See Examples for Usage:

Flexbuffers is the schema-less cousin of Flatbuffers.

Dependencies

~0.5–1.1MB
~25K SLoC