C++ Serialization

Open-source C++ projects categorized as Serialization

Top 23 C++ Serialization Projects

  • Protobuf

    Protocol Buffers - Google's data interchange format

  • Project mention: Reverse Engineering Protobuf Definitions from Compiled Binaries | news.ycombinator.com | 2024-03-09

    For at least 4 years protobuf has had decent support for self-describing messages (very similar to avro) as well as reflection

    https://github.com/protocolbuffers/protobuf/blob/main/src/go...

    Xgooglers trying to make do on the cheap will just create a Union of all their messages and include the message def in a self-describing message pattern. Super-sensitive network I/O can elide the message def (empty buffer) and any for RecordIO clone well file compression takes care of the definition.

    Definitely useful to be able to dig out old defs but protobuf maintainers have surprisingly added useful features so you don’t have to.

    Bonus points tho for extracting the protobuf defs that e.g. Apple bakes into their binaries.

  • FlatBuffers

    FlatBuffers: Memory Efficient Serialization Library

  • Project mention: FlatBuffers – an efficient cross platform serialization library for many langs | news.ycombinator.com | 2023-09-18
  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • Magic Enum C++

    Static reflection for enums (to string, from string, iteration) for modern C++, work with any enum type without any macro or boilerplate code

  • Project mention: What C++ library do you wish existed but hasn’t been created yet? | /r/cpp | 2023-07-08

    I'm not sure this is quite what you're asking for, but this library has been super helpful to me in the past : https://github.com/Neargye/magic_enum

  • cereal

    A C++11 library for serialization

  • rttr

    C++ Reflection Library

  • Bond

    Bond is a cross-platform framework for working with schematized data. It supports cross-language de/serialization and powerful generic mechanisms for efficiently manipulating data. Bond is broadly used at Microsoft in high scale services. (by microsoft)

  • Project mention: LinkedIn Adopts Protocol Buffers and Reduces Latency Up to 60% | news.ycombinator.com | 2023-07-19
  • protobuf-c

    Protocol Buffers implementation in C

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • Nameof C++

    Nameof operator for modern C++, simply obtain the name of a variable, type, function, macro, and enum

  • cista

    Cista is a simple, high-performance, zero-copy C++ serialization & reflection library.

  • Bitsery

    Your binary serialization library

  • glaze

    Extremely fast, in memory, JSON and interface library for modern C++

  • Project mention: [C++20] to_tuple with compile-time names | /r/cpp | 2023-12-05
  • The IOD Library

    Meta programming utilities for C++14. Merged in matt-42/lithium

  • yas

    Yet Another Serialization (by niXman)

  • smf

    Fastest RPC in the west

  • zpp_bits

    A lightweight C++20 serialization and RPC library

  • Project mention: How to arrange a bunch of variables into one array of bytes in memory? | /r/cpp | 2023-05-10

    I would either look at https://github.com/eyalz800/zpp_bits or https://github.com/stephenberry/glaze. FYI, glaze both supports json and binary.

  • cppcodec

    Header-only C++11 library to encode/decode base64, base64url, base32, base32hex and hex (a.k.a. base16) as specified in RFC 4648, plus Crockford's base32. MIT licensed with consistent, flexible API.

  • rapidyaml

    Rapid YAML - a library to parse and emit YAML, and do it fast.

  • Project mention: Faces.js, a JavaScript library for generating vector-based cartoon faces | news.ycombinator.com | 2024-04-06

    Interesting, I hadn't come across extism before. How hard would it be to package https://github.com/biojppm/rapidyaml in this way? (And do you have a extism for dummies guide?)

  • python-rapidjson

    Python wrapper around rapidjson

  • QxOrm

    QxOrm library - C++ Qt ORM (Object Relational Mapping) and ODM (Object Document Mapper) library - Official repository

  • Project mention: Has Boost lost its charm? | /r/cpp | 2023-04-27

    They might have good luck with https://github.com/beached/daw_json_link it has support for stuff like JSON lines and alike plus other ways that only use as much ram as their underlying data structures do as it parses directly to the user DS. Plus it has an iterator/range interface for things like arrays if needed.

  • json_struct

    json_struct is a single header only C++ library for parsing JSON directly to C++ structs and vice versa

  • protozero

    Minimalist protocol buffer decoder and encoder in C++

  • config-loader

    Simple C++ Config Loader Framework(Serialization & Reflection)

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
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).

C++ Serialization related posts

Index

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

Project Stars
1 Protobuf 63,586
2 FlatBuffers 22,048
3 Magic Enum C++ 4,403
4 cereal 3,988
5 rttr 2,979
6 Bond 2,573
7 protobuf-c 2,572
8 Nameof C++ 1,937
9 cista 1,642
10 Bitsery 985
11 glaze 894
12 The IOD Library 727
13 yas 719
14 smf 709
15 zpp_bits 655
16 cppcodec 578
17 rapidyaml 517
18 python-rapidjson 492
19 QxOrm 465
20 daw_json_link 424
21 json_struct 371
22 protozero 276
23 config-loader 189

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com