Open-source serialization software
1984 open-source libraries, tools and applications tagged serialization, ranked by how closely serialization is their primary purpose, then by adoption and maintenance health. Each entry links to a page with sources, use cases and when to choose or avoid it.
1984 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| ibireme/yyjson yyjson is a high-performance JSON parsing and serialization library written in ANSI C (C89), capable of reading and writing gigabytes of JS… | 89 | 3918 | stable |
| safetensors/safetensors Safetensors is a simple, secure file format and library for storing and distributing tensors, designed as a fast zero-copy alternative to p… | 87 | 3901 | stable |
| AsyncBanana/microdiff Microdiff is a tiny (<1kb), zero-dependency JavaScript library for deep comparison of objects and arrays, returning a list of CREATE, REMOV… | 79 | 3873 | stable |
| symfony/yaml The Symfony Yaml component is a PHP library that parses YAML strings into PHP arrays and dumps PHP arrays back into YAML. It is a standalon… | 93 | 3838 | stable |
| liujingxing/rxhttp RxHttp is a type-safe HTTP request library for Android built on top of OkHttp, supporting Kotlin Coroutines, RxJava2, and RxJava3. It offer… | 99 | 3816 | active |
| OpenHFT/Chronicle-Queue Chronicle Queue is a Java library providing microsecond-latency, persisted messaging that stores every message to disk in an append-only, z… | 94 | 3815 | stable |
| i18n-js A Ruby gem that exports i18n translations from YAML files to JSON for use in JavaScript applications, with a companion npm package for cons… | 70 | 3811 | active |
| 01mf02/jaq jaq is a clone of the jq JSON processing tool written in Rust, focused on correctness, speed, and simplicity, usable as a drop-in replaceme… | 91 | 3786 | active |
| Jackson Jackson is the de facto standard JSON parsing and data-binding library for Java and the JVM, providing a streaming parser/generator, POJO-t… | 77 | 3757 | stable |
| goccy/go-json goccy/go- is a fast JSON encoder/decoder library for Go that is a drop-in replacement for the standard encoding/ package. It maintains full… | 94 | 3752 | active |
| jkbrzt/rrule rrule.js is a JavaScript/TypeScript library for creating, parsing, and querying recurrence rules for calendar dates as defined in the iCale… | 23 | 3744 | stable |
| mozilla/source-map A JavaScript library for generating and consuming source maps, the standard format mapping generated code back to original sources. It prov… | 76 | 3724 | stable |
| fastify/fast-json-stringify A Node.js library that generates fast JSON serialization functions from JSON Schema Draft 7 definitions, significantly faster than native J… | 95 | 3705 | stable |
| obsidianmd/jsoncanvas JSON Canvas is an open, MIT-licensed file format specification for infinite canvas data, using the .canvas extension. Originally created fo… | 65 | 3699 | stable |
| gvergnaud/hotscript HotScript is a TypeScript library of composable type-level functions for transforming types, offering higher-order functions like Map, Filt… | 31 | 3680 | active |
| mikel/mail Mail is a pure Ruby library for generating, parsing, and sending/receiving email messages in a simple, Ruby-esque way. It proxies network a… | 75 | 3670 | stable |
| AWS SDK for Ruby The official AWS SDK for Ruby (Version 3), providing idiomatic Ruby client libraries for AWS services such as S3, EC2, and DynamoDB. It is … | 67 | 3657 | stable |
| TypeID TypeID is a specification and set of libraries for type-safe, K-sortable, globally unique identifiers that extend UUIDv7 with a snake_case … | 58 | 3653 | active |
| apache/arrow-rs The official Rust implementation of Apache Arrow, providing the in-memory columnar format, and of Apache Parquet for columnar file reading … | 100 | 3641 | active |
| standard-schema/standard-schema Standard Schema is a specification defining a shared interface for TypeScript schema validation libraries, so tools can accept any complian… | 76 | 3638 | active |
| mini-software/MiniExcel MiniExcel is a lightweight .NET library (with a Rust variant) for reading and writing Excel XLSX and CSV files using row-by-row streaming t… | 95 | 3628 | active |
| nesquena/rabl RABL (Ruby API Builder Language) is a Ruby templating system for Rails and Padrino that generates JSON, XML, MessagePack, PList, and BSON A… | 63 | 3627 | stable |
| jsonrainbow/json-schema A PHP library for validating JSON data structures against JSON Schema, supporting Draft-3, Draft-4, Draft-6, Draft-7, and Draft 2019-09. It… | 99 | 3625 | active |
| RevenantX/LiteNetLib LiteNetLib is a lightweight reliable UDP networking library for .NET, Mono, and Unity. It provides reliable/unordered delivery, packet frag… | 90 | 3625 | active |
| wevm/viem Viem is a TypeScript library providing low-level, stateless primitives for interacting with Ethereum, serving as a modern alternative to et… | 95 | 3583 | active |
| nutsdb/nutsdb NutsDB is a simple, fast, embeddable and persistent key/value store written in pure Go. It supports fully serializable transactions and dat… | 70 | 3579 | active |
| immutables/immutables A Java annotation processor that generates immutable value classes, builders, and copy-with methods from interfaces, abstract classes, and … | 99 | 3574 | active |
| Tencent/rapidjson RapidJSON is a fast, header-only C++ library for parsing and generating JSON, offering both SAX and DOM style APIs. It is self-contained wi… | 23 | 15136 | maintenance |
| ashvardanian/StringZilla StringZilla is a high-performance string processing library for C, C++, Python, Rust, Swift, JS, and Go that uses SIMD, SWAR, and GPU instr… | 94 | 3570 | active |
| scanny/python-pptx python-pptx is a Python library for creating, reading, and updating PowerPoint (.pptx) files using the Open XML format. It generates presen… | 32 | 3544 | stable |
| go-ini/ini A Go library for reading and writing INI configuration files. It supports multiple data sources, parent-child sections, comments, type conv… | 86 | 3542 | stable |
| johncarl81/parceler Parceler is a Java annotation processor that generates Android Parcelable boilerplate code for POJOs annotated with @Parcel. It eliminates … | 70 | 3527 | stable |
| aeron-io/simple-binary-encoding Simple Binary Encoding (SBE) is a high-performance binary message codec implementing the FIX SBE standard for low-latency applications, wit… | 97 | 3515 | stable |
| thephpleague/csv League CSV is a lightweight, framework-agnostic PHP library for reading, writing, filtering, and converting CSV documents. It offers a stra… | 82 | 3483 | active |
| rttrorg/rttr RTTR (Run Time Type Reflection) is an open-source C++ library that adds runtime reflection, letting programs introspect and modify objects'… | 23 | 3483 | stable |
| boltdb/bolt Bolt is a pure Go embedded key/value database inspired by LMDB, offering a small API for getting and setting values with full transactional… | 10 | 14640 | maintenance |
| VerifyTests/Verify Verify is a .NET snapshot (approval) testing library that serializes test results and compares them against stored snapshot files. It integ… | 95 | 3472 | active |
| arfct/itty-bitty Itty.bitty is a tool that takes HTML or other data, compresses it into a URL fragment, and generates a shareable link containing that data.… | 76 | 3466 | active |
| dockview/dockview Dockview is a zero-dependency docking layout manager for the web that provides tabs, groups, grids, splitviews, drag-and-drop, floating pan… | 95 | 3462 | active |
| slatedb/slatedb SlateDB is an embedded key-value storage engine implemented in Rust as a log-structured merge-tree (LSM) that persists all data to object s… | 91 | 3458 | active |
| pdeljanov/Symphonia Symphonia is a pure Rust library for audio decoding, media container demuxing, and metadata/tag reading, supporting formats like FLAC, MP3,… | 83 | 3407 | active |
| milessabin/shapeless shapeless is a type class and dependent type based generic programming library for Scala. It enables deriving type class instances automati… | 65 | 3400 | stable |
| auth0/jwt-decode A small TypeScript library that decodes JWT tokens (Base64Url-encoded JSON) in browser and Node environments. It does not validate signatur… | 64 | 3399 | stable |
| UniVRM UniVRM is the standard Unity implementation of the VRM 3D humanoid avatar file format, which extends glTF 2.0. It supports importing and ex… | 89 | 3392 | active |
| Vectorized/solady Solady is a collection of gas-optimized Solidity smart contract snippets and libraries for Ethereum development. It provides implementation… | 75 | 3379 | active |
| scurker/currency.js currency.js is a lightweight (~1kb) JavaScript library for handling currency values, working around JavaScript's floating point precision i… | 66 | 3376 | stable |
| akheron/jansson Jansson is a C library for encoding, decoding, and manipulating JSON data. It offers a simple API, full UTF-8 Unicode support, and no depen… | 76 | 3369 | stable |
| RNCryptor RNCryptor is a Swift (and Objective-C) library wrapping CommonCrypto AES encryption, implementing a cross-language encrypted data format (v… | 25 | 3355 | stable |
| bwmarrin/snowflake A Go package for generating and parsing Twitter snowflake IDs, 63-bit integers encoding timestamp, node ID, and sequence number. It support… | 23 | 3350 | stable |
| msgpack/msgpack-c MessagePack is an efficient binary serialization format, like JSON but smaller and faster, and this repository is its official implementati… | 95 | 3349 | stable |
| marcuswestin/store.js Store.js is a JavaScript library providing a simple cross-browser key/value local storage API (get/set/remove/each) with plugin-based stora… | 32 | 13973 | maintenance |
| jsoniter jsoniter is a high-performance JSON serialization and parsing library for Go (with a Java variant) that serves as a 100% compatible drop-in… | 10 | 13859 | maintenance |
| orhanobut/logger A simple, pretty, and powerful logging library for Android that formats log output with borders, thread info, method traces, and pretty-pri… | 23 | 13834 | maintenance |
| Apache Avro Apache Avro is a data serialization system providing rich data structures, a compact binary format, container files, and RPC support, with … | 85 | 3307 | stable |
| getkin/kin-openapi A Go library implementing the OpenAPI 2.0, 3.0, 3.1, and (partially) 3.2 specifications. It provides parsing, conversion, and validation of… | 99 | 3302 | active |
| json-c/json-c json-c is a C library implementing a reference-counted object model for constructing, serializing, and parsing JSON, aiming to conform to R… | 83 | 3297 | stable |
| facebook/openzl OpenZL is a format-aware lossless data compression framework from Meta that builds specialized compressors from a description of your data … | 76 | 3272 | active |
| Vortex Vortex is an extensible, high-performance columnar file format and toolkit for compressed data, positioned as a faster alternative to Apach… | 88 | 3260 | active |
| aeron-io/agrona Agrona is a Java library of high-performance data structures and utility methods, including primitive-specialized collections, lock-free qu… | 93 | 3255 | active |
| mongodb/mongo-csharp-driver The official MongoDB driver for C# and .NET, providing a client API for connecting to, querying, and writing to MongoDB databases. It suppo… | 97 | 3247 | stable |
| ohler55/oj Oj (Optimized JSON) is a fast JSON parser and object marshaller implemented as a C extension for Ruby. It serves as a drop-in replacement f… | 94 | 3225 | stable |
| rust-cli/config-rs A Rust library providing a layered configuration system that merges defaults, files (JSON, TOML, YAML, INI, RON, JSON5, Corn), environment … | 76 | 3214 | active |
| SteamRE/SteamKit SteamKit2 is a .NET library for interoperating with Valve's Steam network protocol. It provides a simple, extensible interface for performi… | 96 | 3213 | active |
| jaredwray/keyv Keyv is a TypeScript key-value storage library providing a consistent interface across multiple backends via storage adapters (Redis, Postg… | 99 | 3201 | active |
| pillarjs/iconv-lite iconv-lite is a pure JavaScript library for converting text between character encodings (UTF-8, Windows-125x, ISO-8859, Shift_JIS, GBK, and… | 82 | 3179 | stable |
| Celery Kombu is a Python messaging library providing an idiomatic high-level interface to the AMQP protocol and pluggable transports for RabbitMQ,… | 84 | 3147 | stable |
| hyperoslo/Cache A Swift caching library for iOS, tvOS, and macOS that provides memory, disk, and hybrid storage built on Codable serialization. It offers s… | 37 | 3139 | stable |
| NaturalIntelligence/fast-xml-parser A pure JavaScript library for rapidly validating XML, parsing XML to JS objects, and building XML from JS objects, with no C/C++ dependenci… | 94 | 3138 | stable |
| pallets/itsdangerous ItsDangerous is a Python library for cryptographically signing data so it can be safely passed to untrusted environments (like cookies or U… | 31 | 3134 | stable |
| rt2zz/redux-persist A library for persisting and rehydrating Redux store state across sessions. It supports multiple storage backends and works on both web and… | 67 | 12950 | maintenance |
| docarray/docarray DocArray is a Python library for representing, transmitting, storing, and retrieving multimodal data such as text, images, audio, and video… | 10 | 3125 | active |
| petergoldstein/dalli Dalli is a high-performance pure Ruby client for accessing memcached servers. It supports failover, namespaces, thread-safe operation, SSL/… | 98 | 3114 | active |
| twmb/franz-go franz-go is a feature-complete, pure Go Apache Kafka client library supporting Kafka 0.8.0 through 4.2+, including producing, consuming, tr… | 77 | 3113 | active |
| darccio/mergo Mergo is a Go library that merges same-type structs and maps by setting default values in zero-value fields using reflection. It has been s… | 64 | 3109 | stable |
| Apache Parquet Apache Parquet Java is the Java implementation of the Apache Parquet column-oriented data file format. It provides reading and writing of e… | 90 | 3088 | active |
| lxml/lxml lxml is a fast, feature-rich Python library for processing XML and HTML, built on the C libraries libxml2 and libxslt. It provides an Eleme… | 97 | 3067 | stable |
| stephenberry/glaze Glaze is an extremely fast, header-only C++ serialization and reflection library supporting JSON, BEVE, CBOR, BSON, CSV, MessagePack, TOML,… | 94 | 3061 | active |
| EasyNetQ/EasyNetQ EasyNetQ is an easy-to-use .NET client API for RabbitMQ that simplifies pub/sub messaging, delayed scheduling, and RPC over an AMQP broker.… | 95 | 3060 | active |
| sanctuary-js/sanctuary Sanctuary is a JavaScript functional programming library inspired by Haskell and PureScript, offering a stricter, safer alternative to Ramd… | 23 | 3050 | stable |
| hashie/hashie Hashie is a Ruby gem providing a collection of classes and mixins that extend Ruby's Hash with powerful features like method access, key in… | 73 | 3039 | stable |
| vpulim/node-soap A Node.js library providing both a SOAP client and a SOAP server, with WSDL parsing, SOAP header handling, security options, and async meth… | 97 | 3037 | active |
| 101arrowz/fflate fflate is a fast, tiny pure-JavaScript compression and decompression library supporting DEFLATE, GZIP, Zlib, and ZIP formats in roughly 8kB… | 69 | 3037 | stable |
| mgcrea/node-xlsx A Node.js library for parsing and building Excel (xlsx/xls) files, built as a convenient wrapper around SheetJS. It offers a simple API to … | 23 | 3036 | stable |
| odygrd/quill Quill is an ultra-low-latency asynchronous logging and metrics library for C++17. It is designed for performance-critical applications wher… | 95 | 3032 | active |
| apache/commons-lang Apache Commons Lang is a Java utility library providing helper methods that supplement the java.lang API, including string manipulation, re… | 77 | 3015 | stable |
| nodatime/nodatime Noda Time is an alternative date and time library for .NET, offering a clearer and more precise API than the built-in DateTime types. It pr… | 72 | 3003 | stable |
| catamphetamine/libphonenumber-js A smaller, simpler JavaScript/TypeScript rewrite of Google's libphonenumber library for parsing, validating, and formatting phone numbers. … | 59 | 2999 | stable |
| protobuf-c/protobuf-c A pure C implementation of Google's Protocol Buffers data serialization format, including libprotobuf-c for encoding/decoding and protoc-ge… | 71 | 2995 | stable |
| 1Password/typeshare Typeshare is a CLI tool and Rust library that parses Rust type definitions annotated with serde attributes and generates equivalent type de… | 83 | 2988 | active |
| angularsen/UnitsNet Units.NET is a .NET library providing strongly typed quantities and units of measurement with unit conversion, parsing, and localization su… | 89 | 2973 | stable |
| yaml/pyyaml PyYAML is the canonical full-featured YAML parser and emitter library for Python, with optional fast LibYAML C bindings. It supports loadin… | 60 | 2953 | stable |
| BurntSushi/jiff Jiff is a high-level datetime library for Rust offering date, time, timestamp, and timezone-aware primitives with DST-safe arithmetic, roun… | 61 | 2951 | stable |
| kayak/pypika PyPika is a Python SQL query builder library that exposes the full richness of SQL through a builder-pattern API mirroring the resulting qu… | 67 | 2923 | stable |
| yahoo/serialize-javascript A small npm library from Yahoo that serializes JavaScript values into a string of literal JavaScript code, extending JSON.stringify to supp… | 97 | 2922 | stable |
| grantjenks/python-diskcache DiskCache is a pure-Python disk and file backed cache library with a Django-compatible API, built on SQLite and memory-mapped files. It pro… | 32 | 2915 | stable |
| posit-dev/great-tables Great Tables is a Python library for building beautiful, publication-quality display tables from Pandas or Polars DataFrames using a chaina… | 95 | 2906 | active |
| cocur/slugify A PHP library that converts strings into URL-friendly slugs, with transliteration rules for dozens of languages. It ships integrations for … | 59 | 2897 | stable |
| Monday Gocache is an extensible Go caching library providing a unified API over multiple cache stores such as in-memory (bigcache, ristretto, go-c… | 98 | 2888 | active |
| RubyMoney Money A Ruby library providing a Money class that encapsulates monetary amounts and currencies, storing values as integer cents to avoid floating… | 75 | 2882 | stable |
| aaubry/YamlDotNet YamlDotNet is a YAML library for .NET runtimes including netstandard, .NET 8/10, and .NET Framework. It provides low-level YAML parsing and… | 93 | 2865 | stable |