Bond Serialization Framework
github.com
1
Leaving SiteNav
External Link Disclaimer
You are about to visit github.com. This website is not operated by us. We are not responsible for its content or privacy practices.
About this website
Bond is an open-source, cross-platform framework for working with schematized data, developed by Microsoft and used extensively across Microsoft's cloud infrastructure. With over 2,600 stars as of 2026, Bond is designed for high-performance data serialization in distributed systems, supporting multiple serialization protocols and cross-language code generation. Bond is used in Microsoft Azure services, the Azure Storage platform, and various internal Microsoft systems that require efficient data exchange between services. Key features include: schema definition language (defining data structures in a language-neutral Bond IDL file with support for structs, enums, type aliases, custom types, and generics), multi-language code generation (generating C++, C#, Python, and Java code from Bond schemas, enabling cross-language interoperability), multiple serialization protocols (Compact Binary for space-efficient encoding, Fast Binary for maximum speed, Simple Binary for debugging, JSON for human-readable output, and Bond-compatible JSON for schema-preserving JSON serialization), schema evolution (supporting backward and forward compatibility through field modifiers like required, optional, and default values, allowing schema evolution without breaking existing consumers), generic type system (supporting generics, nullable types, bonded fields for deferred deserialization, and polymorphic types via base and derived struct hierarchies), bonded type (lazy deserialization allowing fields to be parsed only when accessed, improving performance for messages where only some fields are needed), custom transforms (applying custom transformations to data structures during serialization and deserialization, enabling validation, auditing, and data migration), Bonded-over-HTTP (using Bond for efficient binary communication over HTTP in microservices), and integration with Apache Thrift for migration from Thrift schemas.
Tags & Categories
Categories
Tags
Statistics
1
Views
0
Clicks
0
Like
0
Dislike