Rust Serialization

Open-source Rust projects categorized as Serialization | Edit details

Top 18 Rust Serialization Projects

  • rust-protobuf

    Rust implementation of Google protocol buffers

    Project mention: rust-protobuf 3.0 | reddit.com/r/rust | 2022-05-02

    Project on GitHub

  • ron

    Rusty Object Notation

    Project mention: Serialization formats that store structures as tuples instead of as dictionaries | reddit.com/r/C_Programming | 2022-05-20

    Tuples can be serialized in RON format https://github.com/ron-rs/ron

  • SonarQube

    Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.

  • bincode

    A binary encoder / decoder implementation in Rust.

    Project mention: impl serde::Deserialize... is it really that complicated? | reddit.com/r/rust | 2022-04-28

    Step 1: The Deserialize type requests data from the Deserializer with one of the deserialize_type methods. This gives it an opportunity to provide certain metadata about the type: structs provide a list of fields, enums provide a list of variants, tuples provide a length, etc. Some data formats (notably bincode) require this metadata to drive deserializing, as the wire format is not self-describing. Crucially, the Deserialize type also provides a visitor that is capable of receiving the requested data from the Deserializer.

  • rkyv

    Zero-copy deserialization framework for Rust

    Project mention: Pijul 1.0 Beta | news.ycombinator.com | 2022-01-19

    Hi, you seem to know a bit about Sanakirja!

    It stores 4kb blobs, right? Does Pijul first parses the data (copying it to other allocations), or uses the data as is? I mean, there are some libraries like cap'n'proto[0] and rkyv[1] that can directly use the file contents as an in-memory data structure, I was wondering if Pijul did anything like that.

    I mean, is this btree page [2] stored exactly like this on disk, and does Pijul exploits that to avoid further copying data?

    (I guess there's a trouble with compression there: to decompress you really need to write in another buffer)

    Also, is the I/O done with something that prevent userspace copies like mmap or io_uring, or does it eventually calls read() to copy the data to its own buffer?

    I want to build something like Sanakirja, but with those features, so I'm wondering if there's any overlap.

    [0] https://github.com/capnproto/capnproto-rust

    [1] https://github.com/rkyv/rkyv

    [2] https://docs.rs/sanakirja-core/latest/sanakirja_core/btree/p...

  • rust-crdt

    a collection of well-tested, serializable CRDTs for Rust

    Project mention: Rust-CRDT: Foundational CRDTs implemented in Rust | reddit.com/r/CRDTs | 2022-04-23
  • msgpack-rust

    MessagePack implementation for Rust / msgpack.org[Rust]

    Project mention: Does rust have function works like eval? | reddit.com/r/rust | 2021-08-19

    This is similar in practice to using abi_stable, and end-users will still receive compiled files, but your plugins will be sandboxed and a single build will work on all platforms. The downside is that it's a bit more work because WebAssembly's support for passing complex data types between the host and the WebAssembly code is in the preliminary stages, so you need to do something like using Serde to encode your data into something like Bincode or MessagePack (or JSON and friends) to hand it off between the host and the plugin.

  • quick-xml

    Rust high performance xml reader and writer

    Project mention: Hey Rustaceans! Got an easy question? Ask here (41/2021)! | reddit.com/r/rust | 2021-10-11

    This is not directly rust related, but I wanted to create some Excel document generator (and reader) library and was wondering if there are good resources available. In my limited research I tinkered with creating small documents, extracting their contents and looking at the xml inside. I‘m able to generate the same xmls using quick-xml.

  • Scout APM

    Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.

  • deku

    Declarative binary reading and writing: bit-level, symmetric, serialization/deserialization

    Project mention: Macro for structured byte to struct parsing | reddit.com/r/rust | 2022-03-27
  • NoProto

    Flexible, Fast & Compact Serialization with RPC

    Project mention: Flexible, Fast & Compact Serialization with RPC | reddit.com/r/rust | 2021-09-03
  • obake

    Versioned data-structures for Rust

    Project mention: Obake v1.0.1 – Versioned data-structures for Rust | news.ycombinator.com | 2021-08-27
  • dlhn

    DLHN implementation for Rust

    Project mention: I made a blazing fast and small new data serialization format called "DLHN" in Rust. | reddit.com/r/rust | 2022-05-09
  • typical

    Data interchange with algebraic data types. (by stepchowfun)

    Project mention: Fuchsia IDL Overview | news.ycombinator.com | 2022-03-16

    It's a shame that no IDL except Typical [1] has learned the lesson about schema evolution: the only safe way to do it is with "asymmetric" fields. Instead they always have some unprincipled ad hoc type system in which some types can be optional, some have defaults, some can be nested, and others can't—and none of them seem to have proper support for algebraic data types with pattern matching (including FIDL).

    (Disclaimer: I'm the author of Typical.)

    [1] https://github.com/stepchowfun/typical

  • ruststep

    A STEP toolkit for Rust

    Project mention: Fornjot: A next-generation Code-CAD application | news.ycombinator.com | 2022-03-09
  • serde-gura

    Strongly typed Gura library for Rust

    Project mention: Announcing Serde Gura 0.1 | reddit.com/r/rust | 2021-09-01

    The first version of Serde Gura is now available! Gura is a simple and readable configuration language that will be familiar to any YAML and TOML user. Its essence lies in simplicity and was introduced in detail in this post on this subreddit.

  • PyValico

    Small python wrapper around https://github.com/rustless/valico

  • tref

    Tree in Rows Elemental Format. Rust crate to parse, store and serialize trees.

    Project mention: TREF: Rust crate to generate, store, traverse and serialize trees. | reddit.com/r/rust | 2021-09-13

    Hope you can have a look and give me opinions and advice to improve it. And of course, I’m also open to pull requests (https://github.com/asllop/tref).

  • transmog

    Utilities for serializing with multiple formats of data in Rust.

    Project mention: What is the best key-value store for Rust 2021 | reddit.com/r/rust | 2022-01-11

    I have two solutions I've been working on and thinking about. The first is a way to manage multiple formats of data stored in the database, by offering a way to transition old versions to the current version. A possible benefit of this approach is that it doesn't require rewriting your data at the time of schema migration. Some users may not want that extra cost (if there is any), and would prefer a way to update the data.

  • watson-rs

    Rust implementation for esoteric object notation WATSON

    Project mention: Serde support for esoteric configuration language | reddit.com/r/rust | 2022-05-22
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2022-05-22.

Rust Serialization related posts

Index

What are some of the best open-source Serialization projects in Rust? This list will help you:

Project Stars
1 rust-protobuf 2,049
2 ron 1,992
3 bincode 1,578
4 rkyv 1,202
5 rust-crdt 911
6 msgpack-rust 744
7 quick-xml 693
8 deku 392
9 NoProto 299
10 obake 147
11 dlhn 89
12 typical 81
13 ruststep 64
14 serde-gura 10
15 PyValico 5
16 tref 5
17 transmog 4
18 watson-rs 0
Find remote jobs at our new job board 99remotejobs.com. There are 7 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com