awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
google avatar

google/protobuf

0
View on GitHub↗
71,412 estrellas·16,169 forks·C++·2 vistasprotobuf.dev↗

Protobuf

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 across different systems.

The system provides capabilities for binary serialization and interoperable API development. It employs a binary wire format that utilizes tag-based field identification and variable-length integer encoding to maintain forward and backward compatibility.

Features

  • Binary Serialization - Provides a comprehensive framework for converting structured data into compact binary formats for transmission and storage.
  • Binary Serialization Formats - Converts complex data objects into a compact binary format to minimize network and storage requirements.
  • Cross-Language Data Protocols - Provides a standardized binary format for interoperability between different programming languages and hardware architectures.
  • Language-Neutral Data Serialization - Encodes structured data into binary representations that are independent of specific programming languages.
  • Protocol Buffers - Implements the Protocol Buffers binary format for language-neutral, platform-agnostic serialization of structured data.
  • Variable-Width Integer Encodings - Employs variable-length integer encoding to compress numeric values and reduce overall payload volume.
  • IDL Compilers - Translates interface definition language files into native code and type-safe data models.
  • Schema-Driven Code Generators - Transforms language-neutral schema definitions into type-safe source code for multiple target programming languages.
  • Compact Binary Formats - Implements a dense binary representation of structured data to minimize network bandwidth and storage overhead.
  • Data Interchange Standards - Functions as a cross-language data interchange standard using shared schemas for platform-independent communication.
  • Field Tagging - Uses unique numeric tags to identify data fields for compact encoding and version-tolerant decoding.
  • Schema Backward Compatibility Guards - Provides mechanisms to add new fields to schemas without breaking compatibility with older binaries.
  • Schema Compilers - Compiles schema definitions into optimized code modules to ensure type-safe data handling.
  • Service Interoperability Layers - Enables interoperable API development by defining strict data contracts for client-server communication.
  • Data Structure Representations - Uses a common definition format to decouple data structures from specific language memory layouts.
  • Multi-Language Code Generators - Converts data definitions into source code for multiple programming languages to ensure consistent data handling.
  • Data Structures - Language-neutral mechanism for serializing structured data.
  • Serialization and Communication - Language-neutral mechanism for serializing structured data.
  • Serialization Protocols - Industry-standard language-neutral data serialization format.

Historial de estrellas

Gráfico del historial de estrellas de google/protobufGráfico del historial de estrellas de google/protobuf

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Preguntas frecuentes

¿Qué hace google/protobuf?

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.

¿Cuáles son las características principales de google/protobuf?

Las características principales de google/protobuf son: Binary Serialization, Binary Serialization Formats, Cross-Language Data Protocols, Language-Neutral Data Serialization, Protocol Buffers, Variable-Width Integer Encodings, IDL Compilers, Schema-Driven Code Generators.

¿Qué alternativas de código abierto existen para google/protobuf?

Las alternativas de código abierto para google/protobuf incluyen: protobufjs/protobuf.js — protobuf.js is a JavaScript and TypeScript library for encoding and decoding structured data using the Protocol… golang/protobuf — This project is a Protocol Buffers implementation for Go, providing a binary serialization framework to convert native… protocolbuffers/protobuf — Protocol Buffers is a language-neutral, platform-agnostic mechanism for serializing structured data. It provides a… esotericsoftware/kryo — Kryo is a Java binary serialization framework and object cloning library used to convert Java objects into a compact… apache/thrift — Thrift is a cross-language remote procedure call framework and data serialization protocol. It provides an interface… apple/swift-protobuf — This project is a Protocol Buffers Swift library and framework providing a runtime for serializing and deserializing…

Alternativas open-source a Protobuf

Proyectos open-source similares, clasificados según cuántas características comparten con Protobuf.
  • protobufjs/protobuf.jsAvatar de protobufjs

    protobufjs/protobuf.js

    10,558Ver en 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
    Ver en GitHub↗10,558
  • golang/protobufAvatar de golang

    golang/protobuf

    10,074Ver en GitHub↗

    This project is a Protocol Buffers implementation for Go, providing a binary serialization framework to convert native data structures into a compact binary format for efficient network transmission and storage. It functions as a language bindings generator, utilizing a compiler plugin to create Go source code from platform-neutral protocol buffer definitions. The implementation includes a JSON data mapper that transforms structured binary messages into JSON format to facilitate compatibility with web services and external APIs. It also enables cross-language data exchange by using a common s

    Go
    Ver en GitHub↗10,074
  • protocolbuffers/protobufAvatar de protocolbuffers

    protocolbuffers/protobuf

    71,359Ver en 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
    Ver en GitHub↗71,359
  • esotericsoftware/kryoAvatar de EsotericSoftware

    EsotericSoftware/kryo

    6,529Ver en 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
    Ver en GitHub↗6,529
  • Ver las 30 alternativas a Protobuf→