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 |
|---|---|---|---|
| omnidan/node-emoji node-emoji is a Node.js library providing friendly emoji lookups and parsing utilities, built on top of emojilib and skin-tone. It supports… | 23 | 1340 | active |
| json-parser/json-parser A very low footprint DOM-style JSON parser written in portable ANSI C (C89). It ships as just json.c and json.h with no dependencies and a … | 75 | 1339 | stable |
| gosimple/slug A Go library that generates URL-friendly slugs from Unicode strings, with transliteration to ASCII and support for multiple languages. It g… | 23 | 1334 | stable |
| mackysoft/Unity-SerializeReferenceExtensions A Unity editor extension that adds a SubclassSelector dropdown to the Inspector for fields serialized with Unity's [SerializeReference] att… | 100 | 1333 | active |
| qicosmos/iguana iguana is a C++17/C++20 header-only serialization engine built on compile-time reflection, supporting JSON, XML, YAML, and binary/protobuf … | 81 | 1333 | active |
| wojtekmach/req Req is a batteries-included HTTP client library for Elixir with automatic JSON decoding, redirects, retries, and authentication built in. I… | 89 | 1332 | active |
| halaxa/json-machine JSON Machine is a PHP library for memory-efficient streaming parsing of large JSON files and streams. It provides a simple iterator-based A… | 68 | 1332 | stable |
| Flight-School/AnyCodable A Swift library providing type-erased wrappers (AnyEncodable, AnyDecodable, AnyCodable) for encoding and decoding heterogeneous values with… | 10 | 1331 | stable |
| guonaihong/gout gout is a Go HTTP client library designed as a 'Swiss Army Knife' for making HTTP requests with a fluent API. It supports multiple body enc… | 43 | 1327 | active |
| Blazored/LocalStorage A C# library giving Blazor applications access to the browser's localStorage APIs, with automatic JSON serialization and deserialization of… | 10 | 1327 | active |
| stleary/JSON-java JSON-java (org.) is a reference implementation of a JSON package in Java, providing parsers, encoders, and decoders for JSON documents. It … | 87 | 4720 | maintenance |
| mapbox/togeojson A tiny, dependency-free JavaScript library that converts KML and GPX documents into GeoJSON, usable in both browsers and Node.js. It also s… | 59 | 1326 | stable |
| brofield/simpleini SimpleIni is a cross-platform, header-only C++ library for reading and writing INI-style configuration files. It supports ASCII, MBCS, and … | 92 | 1325 | stable |
| jishengpeng/WavTokenizer WavTokenizer is a state-of-the-art discrete neural audio codec that compresses speech, music, and general audio into only 40 or 75 discrete… | 24 | 1325 | active |
| redux-utilities/flux-standard-action A specification and utility library defining Flux Standard Action (FSA), a human-friendly convention for the shape of Flux/Redux action obj… | 23 | 4710 | maintenance |
| koajs/bodyparser @koa/bodyparser is the official body-parsing middleware for the Koa web framework, built on co-body. It parses incoming JSON, form, text, a… | 69 | 1324 | stable |
| Khan/genqlient genqlient is a Go library and code generator that produces type-safe client code for GraphQL APIs. It validates queries against the schema … | 68 | 1323 | active |
| jsonpickle/jsonpickle jsonpickle is a Python library that serializes arbitrary Python object graphs into JSON and deserializes them back into Python objects. It … | 95 | 1320 | stable |
| eliaskosunen/scnlib scnlib is a modern C++ library for text parsing, serving as a type-safe and faster replacement for scanf and std::istream. It is the invers… | 78 | 1317 | stable |
| redis/redis-om-python Redis OM Python is a declarative object-mapping library for Redis that lets you model Redis data with Pydantic-based classes. It provides a… | 86 | 1316 | active |
| amatsuda/jb Jb is a JSON API template engine for Ruby on Rails that serves as a simpler and faster alternative to Jbuilder. Templates are plain Ruby co… | 75 | 1314 | stable |
| proyecto26/RestClient A Promise-based REST and HTTP client library for Unity built on top of UnityWebRequest. It lets game developers make async HTTP requests wi… | 73 | 1313 | stable |
| Mojang/DataFixerUpper DataFixerUpper is a Java library from Mojang for incrementally building, merging, and optimizing data transformations between schema versio… | 55 | 1313 | active |
| procore-oss/blueprinter Blueprinter is a declarative JSON serialization library for Ruby that turns business objects into simple hashes and renders them as JSON. I… | 75 | 1312 | active |
| pretty-bytes A tiny JavaScript library that converts byte counts into human-readable strings like '1.34 kB'. It supports bits, binary prefixes, signed o… | 93 | 1311 | stable |
| haskell/aeson aeson is a fast, widely used Haskell library for parsing, encoding, and manipulating JSON data. It provides typeclass-based conversion betw… | 76 | 1305 | stable |
| spatie/laravel-model-states A Laravel package that adds state machine support to Eloquent models, letting each state be a separate class with defined transitions. It h… | 89 | 1304 | stable |
| apache/incubator-xtable Apache XTable (incubating) is a cross-table converter that translates lakehouse table format metadata between Apache Hudi, Apache Iceberg, … | 83 | 1302 | active |
| ToruNiina/toml11 toml11 is a feature-rich, header-only TOML parsing and serialization library for C++11/14/17/20. It fully complies with the TOML v1.0.0 spe… | 51 | 1302 | stable |
| unjs/ufo ufo is a lightweight TypeScript library providing human-friendly URL utilities for parsing, joining, normalizing, and encoding URLs. It is … | 85 | 1301 | active |
| gulpjs/vinyl Vinyl is a simple JavaScript library that provides a metadata object describing a file with path and contents attributes, regardless of whe… | 67 | 1296 | stable |
| pyexcel/pyexcel pyexcel is a Python library providing a single unified API for reading, manipulating, and writing tabular data across spreadsheet formats i… | 83 | 1292 | active |
| Riptide Networking Riptide is a lightweight C# networking library for building multiplayer games, providing client-server connection management and message pa… | 63 | 1286 | active |
| vinejs/vine VineJS is a fast, schema-based form data validation library for Node.js, designed to validate HTTP request bodies and JSON payloads with bo… | 82 | 1282 | active |
| vercel/bidc BIDC is a TypeScript library providing bidirectional channels for asynchronous communication between JavaScript execution contexts such as … | 39 | 1280 | active |
| Nyholm PSR-7 A super lightweight, strict, and fast PHP implementation of the PSR-7 HTTP message interfaces and PSR-17 factories. It provides request, re… | 44 | 1279 | active |
| GlobalID A Ruby library from the Rails project that provides app-wide URIs (gid://app/Model/id) for uniquely identifying model instances across diff… | 82 | 1278 | stable |
| json-everything/json-everything A collection of .NET libraries extending System.Text.Json with support for JSON Schema validation, JSON Path, JSON Pointer, JSON Patch, JSO… | 77 | 1278 | active |
| TedDriggs/darling Darling is a Rust proc-macro helper library that lets macro authors declaratively parse attribute arguments into structs, inspired by serde… | 94 | 1276 | active |
| santhosh-tekuri/jsonschema A Go library for validating JSON documents against JSON Schema, supporting drafts 4, 6, 7, 2019-09, and 2020-12 with full test-suite compli… | 83 | 1276 | stable |
| wq Django REST Pandas is a Python library that serves pandas DataFrames through the Django REST Framework as a model-driven data API. It rende… | 49 | 1276 | stable |
| jenssegers/optimus A PHP library that obfuscates internal integer IDs using Knuth's multiplicative hashing, producing reversible obfuscated integers instead o… | 23 | 1274 | stable |
| ultrajson/ultrajson UltraJSON (ujson) is an ultra-fast JSON encoder and decoder written in pure C with Python bindings, usable as a drop-in replacement for the… | 92 | 4499 | maintenance |
| bruits/satteri Sätteri is a high-performance Markdown and MDX processing pipeline with the parser and AST implemented in Rust and a typed plugin layer exp… | 75 | 1269 | active |
| fraillt/bitsery Bitsery is a header-only C++ binary serialization library designed for real-time networking, especially in games. It produces compact, meta… | 49 | 1269 | stable |
| jpsim/Yams Yams is a Swift YAML parser and emitter built on top of LibYAML. It provides Codable-based encoding/decoding, conversion to Swift standard … | 88 | 1267 | stable |
| primus/primus Primus is a Node.js abstraction layer over multiple real-time frameworks (WebSocket, SockJS, Engine.IO, BrowserChannel, polling) that expos… | 23 | 4465 | maintenance |
| FriendsOfSymfony/FOSElasticaBundle A Symfony bundle that integrates the Elastica PHP client with Elasticsearch, providing index configuration, serialization, and Doctrine eve… | 78 | 1265 | active |
| graphql-rust/graphql-client A typed GraphQL client library for Rust that generates precise Rust types for query variables and responses at compile time from schema and… | 76 | 1264 | active |
| alexandercerutti/passkit-generator A Node.js/TypeScript library for generating customized Apple Wallet passes (.pkpass files) for iOS and WatchOS. It separates static pass mo… | 99 | 1263 | active |
| favadi/protoc-go-inject-tag A Go CLI tool that injects custom struct tags into generated Go protobuf (.pb.go) files using @gotags comments in .proto files. It works as… | 43 | 1263 | stable |
| openspout/openspout OpenSpout is a community-maintained PHP library for reading and writing spreadsheet files in CSV, XLSX, and ODS formats. It processes very … | 98 | 1261 | active |
| axuno/SmartFormat SmartFormat is a lightweight C# text templating library that serves as a drop-in replacement for string.Format. It supports named placehold… | 73 | 1259 | stable |
| WICG/webpackage A collection of IETF/WICG specifications and Go tooling for packaging websites into portable bundles, including Signed HTTP Exchanges (SXG)… | 69 | 1258 | active |
| scalalandio/chimney Chimney is a battle-tested Scala library for boilerplate-free, type-safe data transformations between case classes and other types. It uses… | 92 | 1256 | stable |
| django-json-api/django-rest-framework-json-api A library that adds JSON:API specification support to Django REST framework, transforming default DRF responses into compliant JSON:API for… | 71 | 1254 | active |
| smilehao/xlua-framework A complete pure-Lua client framework for Unity games built on xLua, integrating proto-gen-lua and various Lua libraries and utility classes… | 61 | 1254 | active |
| dmlc/dlpack DLPack is a minimal, stable open in-memory tensor structure defined as a single C ABI header, enabling zero-copy tensor exchange between de… | 73 | 1253 | stable |
| gustavoguichard/string-ts A TypeScript library providing common string manipulation functions (like replace, camelCase, deepCamelKeys) that preserve literal string t… | 61 | 1253 | active |
| KaisenAmin/c_std A pure C17 library that reimplements a large slice of the C++ Standard Library (containers, algorithms, smart pointers) plus Python-style u… | 72 | 1252 | active |
| uuid-rs/uuid A Rust library for generating and parsing UUIDs (universally unique identifiers) per RFC 9562. It supports multiple UUID versions including… | 98 | 1249 | stable |
| schema-dts schema-dts provides TypeScript type definitions for the Schema.org vocabulary in JSON-LD format, exposed as discriminated type unions for a… | 87 | 1248 | active |
| RobotWebTools/rosbridge_suite rosbridge_suite is a set of ROS packages implementing the rosbridge v2 protocol, which exposes ROS topics, services, and parameters through… | 73 | 1246 | active |
| merkletreejs/merkletreejs A JavaScript/TypeScript library for constructing Merkle Trees and generating and verifying cryptographic inclusion proofs. It supports mult… | 41 | 1244 | stable |
| legastero/stanza StanzaJS is a JavaScript/TypeScript library for modern XMPP that exposes all stanzas as JSON instead of XML. It supports WebSocket and BOSH… | 62 | 1241 | active |
| node-modules/utility A Node.js utility library providing hashing functions (md5, sha1, sha256, hmac), base64 encoding/decoding, and HTML/URL escaping helpers. I… | 61 | 1239 | stable |
| Evercoder/culori Culori is a comprehensive JavaScript color library supporting conversion, interpolation, blending, and color difference formulas across man… | 60 | 1239 | stable |
| knurling-rs/defmt defmt is a highly efficient logging framework for Rust targeting resource-constrained embedded devices like microcontrollers. It uses defer… | 91 | 1238 | active |
| ibireme/YYModel YYModel is a high-performance JSON-to-model conversion framework for iOS and macOS written in Objective-C. It converts between JSON/diction… | 23 | 4344 | maintenance |
| PoloDB/PoloDB PoloDB is an embedded document database written in Rust that stores BSON documents with a MongoDB-like API, backed by RocksDB storage. It c… | 81 | 1236 | active |
| DmitryTsepelev/store_model StoreModel is a Ruby gem that wraps JSON-backed database columns (like jsonb) with ActiveModel-like classes using the Rails Attributes API.… | 74 | 1234 | active |
| evanphx/json-patch A Go library for applying RFC 6902 JSON Patch documents and creating/applying RFC 7396 JSON Merge Patch documents. It also supports compari… | 48 | 1231 | stable |
| indutny/bn.js bn.js is a pure JavaScript arbitrary-precision integer (BigNum) arithmetic library supporting addition, multiplication, modular reduction, … | 60 | 1230 | stable |
| niieani/hashids.js Hashids is a small JavaScript/TypeScript library that generates YouTube-like short, reversible IDs from numbers, so database primary keys a… | 49 | 4289 | maintenance |
| lloydmeta/enumeratum Enumeratum is a type-safe, reflection-free enumeration library for Scala with exhaustive pattern match warnings and compile-time macro-base… | 84 | 1223 | stable |
| hooklift/gowsdl gowsdl is a Go CLI tool that generates idiomatic Go client code from WSDL 1.1 files, including SOAP proxy code. It supports Document/Litera… | 23 | 1223 | active |
| hyperrealm/libconfig libconfig is a compact C/C++ library for parsing and processing structured, type-aware configuration files. Its format is more compact and … | 76 | 1222 | stable |
| vojtechhabarta/typescript-generator A Java tool that generates TypeScript definition files (.d.ts) from Java JSON classes using reflection, available as Maven and Gradle plugi… | 86 | 1221 | active |
| videojs/mux.js mux.js is a lightweight JavaScript library for inspecting and manipulating video container formats such as MPEG2-TS, fMP4, and FLV. Its cor… | 63 | 1221 | stable |
| SirixDB SirixDB is an embeddable, bitemporal, append-only database system for JSON and XML that stores immutable, space-efficient snapshots of ever… | 94 | 1219 | active |
| marshmallow-code/apispec A pluggable Python library that generates OpenAPI (Swagger) specifications, supporting OpenAPI versions 2 and 3. It is framework-agnostic w… | 76 | 1219 | active |
| Oudwins/zog Zog is a Zod-inspired schema builder for runtime value parsing and validation in Go, using method chaining to define expressive schemas wit… | 86 | 1218 | active |
| emn178/online-tools A collection of browser-based online tools for hashing (md2, md5, sha1, sha2, sha512), base64, and HTML encode/decode operations. It runs e… | 75 | 1218 | active |
| mongodb/js-bson The official BSON (Binary JSON) parser library for Node.js and browsers, maintained by MongoDB. It serializes and deserializes JSON-like do… | 96 | 1217 | stable |
| layrjs/layr Layr is a full-stack JavaScript/TypeScript framework that dramatically simplifies full-stack development by letting frontend and backend sh… | 64 | 1217 | active |
| sindresorhus/pretty-ms A small JavaScript library that converts milliseconds into human-readable duration strings like '15d 11h 23m 20s'. It supports options for … | 84 | 1216 | stable |
| Fellow Oak DICOM Fellow Oak DICOM (fo-dicom) is a C#/.NET library implementing the DICOM standard for medical imaging, including parsing, image codecs, anon… | 84 | 1216 | active |
| alibaba/HandyJSON HandyJSON is a Swift library for serializing and deserializing JSON to and from model objects (pure classes and structs) on iOS. It uses ru… | 23 | 4257 | maintenance |
| persian-tools/persian-tools A comprehensive, zero-dependency TypeScript toolkit with 27+ utilities for Persian (Farsi) text, numbers, and Iranian-specific validation s… | 66 | 1212 | active |
| jprichardson/node-jsonfile A small Node.js library that simplifies reading and writing JSON files by wrapping fs and JSON.parse/stringify in convenient methods. It su… | 64 | 1212 | stable |
| lcm-proj/lcm LCM (Lightweight Communications and Marshalling) is a set of libraries and tools for low-latency, high-bandwidth publish/subscribe message … | 86 | 1211 | stable |
| APIDevTools/swagger-parser A JavaScript library that parses, validates, resolves, bundles, and dereferences Swagger 2.0 and OpenAPI 3.0 specifications in JSON or YAML… | 96 | 1209 | active |
| Tim-Maes/Facet Facet is a C# source generator that eliminates DTO boilerplate by generating DTO types, constructors, LINQ projections, and reverse mapping… | 81 | 1209 | active |
| letta-ai/agent-file Agent File (.af) is an open file format for serializing stateful AI agents, packaging system prompts, persistent memory, tool configuration… | 65 | 1208 | active |
| ksdme/ut A fast, lightweight Rust CLI utility toolkit that bundles many common developer utilities (encoding, hashing, JWT, UUID generation, and mor… | 66 | 1207 | active |
| rictic/jsonriver jsonriver is a small, dependency-free TypeScript library that parses JSON incrementally as it streams in, yielding a sequence of increasing… | 51 | 1207 | active |
| icalendar/icalendar A Ruby library for parsing, creating, and manipulating iCalendar (.ics) files as defined by RFC-5545. It supports building calendars and ev… | 77 | 1205 | active |
| MagicStack/immutables A high-performance immutable mapping type for Python based on a Hash Array Mapped Trie (HAMT). It is the implementation used in CPython's c… | 29 | 1205 | stable |
| okuramasafumi/alba Alba is a fast, flexible JSON serializer gem for Ruby, JRuby, and TruffleRuby. It lets you define resource classes that declare attributes … | 91 | 1204 | active |
| zserge/jsmn jsmn is a minimalistic, header-only JSON parser/tokenizer written in C89 with no dependencies and no dynamic memory allocation. It produces… | 23 | 4198 | maintenance |