awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
Back to golang/protobuf

Projects sharing features with Protobuf

30 open-source projects similar to golang/protobuf, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.

  • google/flatbuffersgoogle avatar

    google/flatbuffers

    25,558View on GitHub↗

    FlatBuffers is a cross-platform serialization library designed for performance-critical applications that require efficient, zero-copy data access. By organizing data in a structured binary format, it allows applications to read and write complex data structures directly from memory-mapped buffers without the need for intermediate parsing or temporary object allocation. The project distinguishes itself through a schema-driven approach that balances high-performance access with long-term data evolution. It utilizes a unique memory layout featuring relative offsets and inline fixed-size structu

    C++cc-plus-plusc-sharp
    View on GitHub↗25,558
  • google/protobufgoogle avatar

    google/protobuf

    71,412View on GitHub↗

    Protocol Buffers is a binary serialization framework used to encode structured information into compact payloads to reduce network bandwidth and storage. It functions as a cross-language data interchange standard that enables different platforms and languages to exchange structured data using a shared schema. The project includes an interface definition language compiler that transforms schema definitions into type-safe source code for multiple target programming languages. This mechanism decouples data structures from specific language memory layouts and ensures consistent data handling acro

    C++
    View on GitHub↗71,412
  • protobufjs/protobuf.jsprotobufjs avatar

    protobufjs/protobuf.js

    10,558View on GitHub↗

    protobuf.js is a JavaScript and TypeScript library for encoding and decoding structured data using the Protocol Buffers binary format. It functions as a dynamic parser that can load and process schemas at runtime, a JSON transcoder for converting messages to human-readable formats, and a framework for building transport-agnostic remote procedure call clients. The project distinguishes itself by offering both dynamic message handling and a static code generator that produces TypeScript declarations and JavaScript modules to reduce runtime overhead. It also provides a reflection API for definin

    JavaScript
    View on GitHub↗10,558

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Find more with AI search
  • gogo/protobufgogo avatar

    gogo/protobuf

    5,669View on GitHub↗

    This project is a Protocol Buffers Go compiler and code generation framework that translates schema definitions into optimized Go structures and reflection-free serialization methods. It includes a gRPC service generator for producing client and server communication code and a serialization performance toolkit for generating automated benchmarks and test suites. The framework features a plugin-based system for transforming data definitions into source code with custom field mapping and struct tag injection. It allows for custom type mapping and struct type overriding to link data fields to sp

    Gogogolanggrpc
    View on GitHub↗5,669
  • apache/thriftapache avatar

    apache/thrift

    10,933View on GitHub↗

    Thrift is a cross-language remote procedure call framework and data serialization protocol. It provides an interface definition language to specify data types and service interfaces in a neutral format, enabling the automated generation of client and server code across multiple programming languages. The project functions as a polyglot service communicator using a layered software stack to ensure interoperable communication. It focuses on implementing cross-language remote procedure calls and transforming complex data structures into standardized formats for efficient network transport. The

    C++
    View on GitHub↗10,933
  • esotericsoftware/kryoEsotericSoftware avatar

    EsotericSoftware/kryo

    6,529View on GitHub↗

    Kryo is a Java binary serialization framework and object cloning library used to convert Java objects into a compact binary format and restore them from bytes. It provides a system for creating deep or shallow copies of complex object graphs without requiring binary conversion. The project utilizes variable-length integer encoding and integer-ID class registration to reduce the size of serialized data. It handles complex object graphs through circular reference tracking to prevent data duplication and infinite loops. To maintain long-term data viability, it includes schema evolution managemen

    HTML
    View on GitHub↗6,529
  • apple/swift-protobufapple avatar

    apple/swift-protobuf

    4,935View on GitHub↗

    This project is a Protocol Buffers Swift library and framework providing a runtime for serializing and deserializing structured data. It includes a code generator that transforms schema files into type-safe Swift structures and a binary serialization framework for converting data into compact streams. The library functions as a JSON data mapper, transforming messages into standard JSON representations to facilitate cross-platform data exchange. It utilizes a schema-driven approach to ensure consistent data modeling between Swift applications and services written in other languages. The frame

    Swift
    View on GitHub↗4,935
  • msgpack/msgpackmsgpack avatar

    msgpack/msgpack

    7,472View on GitHub↗

    MessagePack is a binary object serialization library and a cross-platform data exchange format. It serves as a binary alternative to JSON, converting structured data into a space-efficient binary representation for network transmission and storage. The system provides a standardized format for swapping complex data types across different programming languages and architectures. It allows for the definition of custom data type encoding by pairing application-specific information with specialized serialization markers. The library handles the encoding and decoding of diverse data types, includ

    View on GitHub↗7,472
  • square/wiresquare avatar

    square/wire

    4,419View on GitHub↗

    Wire is a cross-platform code generator and implementation of gRPC and Protocol Buffers. It transforms schema definitions into type-safe native language bindings for Kotlin, Swift, and Java to ensure consistent data exchange and communication between distributed systems. The project provides specialized tools for protocol buffer schema management, including the ability to prune unused types and filter fields by version to reduce final binary sizes. It also handles namespace management and allows for the creation of custom schema handlers to execute user-defined logic during the compilation ph

    Kotlin
    View on GitHub↗4,419
  • fasterxml/jacksonFasterXML avatar

    FasterXML/jackson

    9,740View on GitHub↗

    Jackson is a Java data binding framework and multi-format data serializer used to translate data structures into native language objects. It functions as a JSON data binding library and a streaming parser that reads and writes data as discrete tokens to process large datasets with minimal memory. The project distinguishes itself through a bytecode serialization accelerator that replaces standard reflection with generated bytecode to increase data binding speed. It employs a module-based extensibility model to support a wide range of formats beyond JSON, including XML, YAML, CSV, TOML, and bin

    hacktoberfestjacksonjava-json
    View on GitHub↗9,740
  • capnproto/capnprotocapnproto avatar

    capnproto/capnproto

    13,089View on GitHub↗

    CapnProto is a zero-copy serialization framework and remote procedure call system. It serves as a C++ communication library providing a schema-based data interchange format that eliminates the need to encode or decode data before reading it from memory. The system enables high-performance data serialization and low-latency network communication. It supports cross-language data exchange by using a defined schema to ensure consistent binary representation across different platforms. The framework provides tools for implementing remote procedure calls, allowing functions to be invoked on a remo

    C++
    View on GitHub↗13,089
  • json-iterator/gojson-iterator avatar

    json-iterator/go

    13,891View on GitHub↗

    This project is a high-performance JSON library for Go, serving as a replacement for the standard encoding/json package. It provides a serialization engine for encoding and decoding data structures, alongside a schemaless parser for extracting specific values from JSON blobs using paths. The library distinguishes itself through a focus on reducing CPU and memory overhead. It implements a high-performance encoder that utilizes buffer reuse and reduced float precision to increase data throughput. Broad capability areas include data serialization, high-performance JSON processing, and schema-le

    Godeserializationgogolang
    View on GitHub↗13,891
  • ugorji/gougorji avatar

    ugorji/go

    1,952View on GitHub↗

    idiomatic codec and rpc lib for msgpack, cbor, json, etc. msgpack.orgGo

    Go
    View on GitHub↗1,952
  • protocolbuffers/protobufprotocolbuffers avatar

    protocolbuffers/protobuf

    71,359View on GitHub↗

    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

    C++marshallingprotobufprotobuf-runtime
    View on GitHub↗71,359
  • tokio-rs/prosttokio-rs avatar

    tokio-rs/prost

    4,717View on GitHub↗

    Prost is a Protocol Buffers implementation for Rust that functions as a binary serialization framework and code generator. It translates schema definitions into idiomatic Rust structs and enums, providing the logic necessary to encode and decode structured data into the Protocol Buffers binary format. The project distinguishes itself through a no-std implementation, allowing it to operate in embedded or kernel environments that lack a standard library. It also serves as a schema introspector by emitting file descriptor sets, which enables the programmatic analysis of original schema definitio

    Rustprotobufrust
    View on GitHub↗4,717
  • cysharp/magiconionCysharp avatar

    Cysharp/MagicOnion

    4,408View on GitHub↗

    MagicOnion is a .NET RPC framework used to build type-safe remote procedure call services using shared interfaces for communication between servers and clients. It functions as a binary serialization framework and a distributed service orchestrator, providing a network layer for low-latency streaming and real-time data exchange. The project distinguishes itself through an AOT-compatible network client that uses source generators to support ahead-of-time compilation in restricted runtime environments. It enables bidirectional communication and real-time data streaming, allowing servers and mul

    C#c-sharpgrpcrpc
    View on GitHub↗4,408
  • toon-format/toontoon-format avatar

    toon-format/toon

    24,642View on GitHub↗

    Toon is a data serialization library and toolkit designed to convert complex objects into compact, human-readable formats optimized for large language models. By focusing on token efficiency, the library minimizes the context window footprint of structured data through techniques like key folding and tabular layout optimization. It provides a streaming-capable processor that handles the encoding and decoding of hierarchical data while maintaining structural integrity. The project distinguishes itself through its path-aware transformation pipeline and configurable serialization logic, which al

    TypeScriptdata-formatllmserialization
    View on GitHub↗24,642
  • apache/dubboapache avatar

    apache/dubbo

    41,519View on GitHub↗

    Dubbo is a Java RPC framework and microservices governance platform designed for high-performance remote procedure calls in distributed architectures. It provides the foundational components necessary to connect distributed services across a network, including a binary data serialization library and a distributed service registry. The platform distinguishes itself through a comprehensive governance suite that manages service discovery, load balancing, and traffic routing. It enables precise control over network traffic via conditional routing and a pluggable extension mechanism based on a ser

    Javadistributed-systemsdubboframework
    View on GitHub↗41,519
  • mystenlabs/suiMystenLabs avatar

    MystenLabs/sui

    7,612View on GitHub↗

    Sui is a blockchain platform featuring an object-centric state model and resource-oriented smart contracts. It utilizes parallel transaction execution to increase network throughput and supports programmable transaction blocks that bundle multiple operations into single atomic units. The platform distinguishes itself with a capability-based access control system and zero-knowledge login mechanisms, enabling users to authenticate via identity providers without seed phrases. It also implements deterministic object addressing to allow predictable state lookups and supports the creation of soulbo

    Rustblockchaindistributed-ledger-technologymove
    View on GitHub↗7,612
  • nanopb/nanopbnanopb avatar

    nanopb/nanopb

    5,437View on GitHub↗

    Nanopb is a lightweight C implementation of Protocol Buffers designed for resource-constrained systems and microcontrollers. It functions as both an embedded serialization library for encoding and decoding structured data and a code generator that transforms definition files into compact C source and header files. The project is distinguished by its focus on static memory allocation, using fixed maximum sizes for strings and arrays to avoid dynamic memory allocation and heap fragmentation. It employs a callback-based streaming mechanism to process messages or fields that exceed available phys

    C
    View on GitHub↗5,437
  • serde-rs/serdeserde-rs avatar

    serde-rs/serde

    10,457View on GitHub↗

    This project is a framework for the efficient serialization and deserialization of data structures. It provides a unified, macro-based interface that automates the conversion of complex internal objects into standardized formats and reconstructs them from raw input streams or buffers. By leveraging compile-time code generation, the library minimizes manual implementation overhead while ensuring consistent logic across diverse data types. The framework distinguishes itself through a format-agnostic data model and a visitor-based parsing architecture that decouples data structures from specific

    Rustderiveno-stdrust
    View on GitHub↗10,457
  • cloudwu/skynetcloudwu avatar

    cloudwu/skynet

    14,075View on GitHub↗

    Skynet is a distributed game server framework designed for building scalable online game backends. It utilizes distributed actor-based clusters and real-time network communication to manage high-concurrency session coordination across multiple nodes. The framework includes a cluster management orchestrator for coordinating services via cluster-wide messaging and dynamic configuration updates. It features a multi-protocol network gateway supporting TCP, UDP, and WebSockets, alongside a data encoding layer using BSON and Sproto serialization for efficient information transfer between distribute

    C
    View on GitHub↗14,075
  • mongodb/mongo-python-drivermongodb avatar

    mongodb/mongo-python-driver

    4,342View on GitHub↗

    The MongoDB Python Driver is a client library and NoSQL database client used to execute CRUD operations and manage data within MongoDB databases using the Python programming language. It serves as a database connectivity library that handles authentication and connection pooling, while also providing a vector search client for managing embedding indexes and retrieving data based on semantic similarity. The driver supports both synchronous and asynchronous database driver models to perform non-blocking I/O operations and stream data from database clusters. It distinguishes itself through speci

    Pythonmongodbmongodb-driverpymongo
    View on GitHub↗4,342
  • square/moshisquare avatar

    square/moshi

    10,138View on GitHub↗

    Moshi is a JSON serialization library and parser for Kotlin and Java. It functions as a reflectionless JSON encoder that converts typed objects to JSON strings and parses JSON data back into language objects. The library distinguishes itself through compile-time adapter generation, which removes the performance overhead associated with runtime reflection. It also provides a polymorphic JSON mapper that uses type identifiers to resolve and instantiate specific subclasses of a common base type. The framework supports custom adapter definitions for specialized type conversion, including nullabi

    Kotlin
    View on GitHub↗10,138
  • oatpp/oatppoatpp avatar

    oatpp/oatpp

    8,553View on GitHub↗

    Oatpp is a high-performance C++ web framework and API development kit used for building REST APIs and web services. It functions as an asynchronous HTTP server that utilizes coroutines to handle thousands of simultaneous connections without blocking threads. The toolkit includes a native C++ object-relational mapping layer for executing SQL queries and transforming database results into data objects. It also provides a WebSocket communication library for establishing full-duplex channels to support real-time data streaming and live media. The framework covers a broad range of capabilities, i

    C++c-plus-pluscppcross-platform
    View on GitHub↗8,553
  • terrakok/kmp-awesometerrakok avatar

    terrakok/kmp-awesome

    5,785View on GitHub↗

    KMP-Awesome is a curated directory and resource index for the Kotlin Multiplatform ecosystem. It serves as a centralized hub for developers to discover libraries, frameworks, and tools designed to streamline the creation of shared codebases for mobile, desktop, and web applications. The project distinguishes itself by organizing a comprehensive collection of solutions that address the core challenges of cross-platform development. It highlights resources for implementing shared business logic, declarative user interface components, and type-safe data persistence layers. By providing a structu

    androidawesomecompose
    View on GitHub↗5,785
  • apache/arrowapache avatar

    apache/arrow

    16,529View on GitHub↗

    Arrow is a cross-language development platform for in-memory data. It provides a standardized, language-independent columnar memory format designed to accelerate analytical operations and improve memory efficiency on modern computing hardware. By utilizing a schema-driven approach, the framework enables the efficient organization of both flat and nested data structures. The project functions as an analytical data processing engine that facilitates high-performance computation directly on memory-resident datasets. It distinguishes itself through a zero-copy architecture, which allows multiple

    C++arrowparquet
    View on GitHub↗16,529
  • streamich/json-joystreamich avatar

    streamich/json-joy

    1,079View on GitHub↗

    json-joy is a comprehensive library for building real-time collaborative applications and distributed systems. It provides a robust framework for managing shared JSON-like data structures that automatically merge concurrent edits from multiple users, ensuring consistent state across all replicas without requiring a central coordination server. The project distinguishes itself through a high-performance approach to data handling, utilizing conflict-free replicated data types and logical clock-based synchronization to maintain data integrity. It includes a specialized engine for navigating and

    TypeScriptcborcollaborationcollaborative
    View on GitHub↗1,079
  • apache/brpcapache avatar

    apache/brpc

    17,545View on GitHub↗

    brpc is a high-performance C++ RPC framework and network programming library designed for building distributed systems. It functions as a multi-protocol RPC server capable of hosting and detecting multiple communication protocols, including gRPC, Thrift, HTTP, Redis, and Memcached, on a single TCP port. The project distinguishes itself through high-throughput data transport and memory efficiency, utilizing RDMA-based transport to bypass the kernel TCP stack and zero-copy memory management to eliminate data duplication. It also implements the Raft algorithm for consensus-based state replicatio

    C++rpc
    View on GitHub↗17,545
  • akkadotnet/hyperionakkadotnet avatar

    akkadotnet/Hyperion

    281View on GitHub↗

    Polymorphic serialization for .NET

    C#dotnetdotnet-corehyperion
    View on GitHub↗281