#key-value-store #key-value #database #serialization

macro storekey-derive

Private implementation of procedural macros for storekey

6 releases (breaking)

Uses new Rust 2024

new 0.11.0 Dec 8, 2025
0.10.0 Nov 27, 2025
0.9.0 Oct 29, 2025
0.8.1 Sep 10, 2025
0.7.0 Sep 3, 2025

#31 in #kv-store

Download history 137/week @ 2025-09-01 1625/week @ 2025-09-08 3384/week @ 2025-09-15 2473/week @ 2025-09-22 3054/week @ 2025-09-29 2168/week @ 2025-10-06 1800/week @ 2025-10-13 2212/week @ 2025-10-20 3441/week @ 2025-10-27 2509/week @ 2025-11-03 2044/week @ 2025-11-10 4360/week @ 2025-11-17 3832/week @ 2025-11-24 6339/week @ 2025-12-01

17,079 downloads per month
Used in storekey

Apache-2.0

20KB
589 lines


Storekey Logo Storekey Logo

Binary encoding for Rust values which ensures lexicographic sort ordering. Order-preserving encoding is useful for creating keys for sorted key-value stores with byte string typed keys, such as EchoDB, MemoDB, IndxDB, SurrealKV, and SurrealDB.


     

Features

  • Binary encoding whilst preserving lexicographic sort order
  • Useful for creating keys for sorted key-value data stores
  • Aims to encode values into the fewest number of bytes possible
  • The exact type of a serialized value must be known in order to deserialize it
  • Supports all Rust primitives, strings, options, structs, enums, vecs, and tuples

Original

This code is forked originally from bytekey-fix, which is originally forked from bytekey, both licensed under the Apache License 2.0 license. See LICENSE for full license text.

Dependencies

~160–570KB
~14K SLoC