Extensible Data Notation is a language-agnostic text format designed for the reliable exchange of structured data and immutable values across diverse programming environments and distributed systems. It provides a standardized way to organize information into hierarchies using collections such as maps, sets, and vectors, ensuring consistent data recognition through the use of symbolic identifiers and keywords. The format distinguishes itself through its support for extensible tagged elements, which allow developers to register custom handlers to interpret domain-specific data structures beyon
Fury is a multi-language binary serialization framework designed for encoding domain objects and complex graphs to facilitate cross-language data exchange. It includes an interface definition language compiler that translates schema definitions into idiomatic native types and serialization boilerplate across multiple languages. The project distinguishes itself through a zero-copy binary reader that allows specific fields to be accessed without deserializing the entire object, as well as an object graph serializer that preserves circular references and referential integrity. It also features a
Protocol Buffers is a language-neutral, platform-agnostic mechanism for serializing structured data. It provides a schema-driven toolchain that compiles declarative data definitions into type-safe source code, enabling consistent communication and strongly typed API contracts across services written in different programming languages. The project distinguishes itself through a highly efficient binary wire format that utilizes tag-based encoding and variable-width integer compression to minimize payload size and processing overhead. It supports robust evolutionary schema management, allowing d
Fory is a cross-language serialization framework and binary data serializer designed to convert complex object graphs into a compact binary format for high-performance data exchange. It includes an IDL-based schema compiler to transform interface definition language files into type-safe native data models and a schema evolution manager to maintain forward and backward compatibility. The project features a zero-copy data access layer that allows reading specific fields from binary rows without deserializing the entire object. It supports dual-mode serialization, enabling a toggle between a por
Transit is a language-agnostic data interchange format designed for serializing complex data structures between heterogeneous software systems. It provides a standardized protocol that preserves semantic type information during the exchange process, ensuring that data remains consistent when moved across different programming environments.
The main features of cognitect/transit-format are: Data Serialization Formats, Agnostic Data Interchange Formats, Language-Neutral Data Serialization, Cross-Language Serialization Frameworks, Stream-Based Compression, Custom Data Type Providers, Caching Stream Compressors, Tag-Based Binary Encodings.
Open-source alternatives to cognitect/transit-format include: edn-format/edn — Extensible Data Notation is a language-agnostic text format designed for the reliable exchange of structured data and… alipay/fury — Fury is a multi-language binary serialization framework designed for encoding domain objects and complex graphs to… protocolbuffers/protobuf — Protocol Buffers is a language-neutral, platform-agnostic mechanism for serializing structured data. It provides a… apache/fory — Fory is a cross-language serialization framework and binary data serializer designed to convert complex object graphs… apache/thrift — Thrift is a cross-language remote procedure call framework and data serialization protocol. It provides an interface… apache/arrow — Arrow is a cross-language development platform for in-memory data. It provides a standardized, language-independent…