[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-442":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":19,"compositeScore":20,"rankGlobal":10,"rankLanguage":10,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":24,"hasPages":24,"topics":25,"createdAt":10,"pushedAt":10,"updatedAt":33,"readmeContent":34,"aiSummary":35,"trendingCount":16,"starSnapshotCount":16,"syncStatus":36,"lastSyncTime":37,"discoverSource":38},442,"protobuf","protocolbuffers\u002Fprotobuf","protocolbuffers","Protocol Buffers - Google's data interchange format","http:\u002F\u002Fprotobuf.dev",null,"C++",71336,16151,2015,115,0,19,137,9,45,"Other",false,"main",true,[26,5,27,28,29,30,31,32],"marshalling","protobuf-runtime","protoc","protocol-buffers","protocol-compiler","rpc","serialization","2026-06-12 02:00:13","Protocol Buffers - Google's data interchange format\n===================================================\n\n[![OpenSSF Scorecard](https:\u002F\u002Fapi.securityscorecards.dev\u002Fprojects\u002Fgithub.com\u002Fprotocolbuffers\u002Fprotobuf\u002Fbadge)](https:\u002F\u002Fsecurityscorecards.dev\u002Fviewer\u002F?uri=github.com\u002Fprotocolbuffers\u002Fprotobuf)\n\nCopyright 2008 Google LLC\n\nOverview\n--------\n\nProtocol Buffers (a.k.a., protobuf) are Google's language-neutral,\nplatform-neutral, extensible mechanism for serializing structured data. You\ncan learn more about it in [protobuf's documentation](https:\u002F\u002Fprotobuf.dev).\n\nThis README file contains protobuf installation instructions. To install\nprotobuf, you need to install the protocol compiler (used to compile .proto\nfiles) and the protobuf runtime for your chosen programming language.\n\nWorking With Protobuf Source Code\n---------------------------------\n\nMost users will find working from\n[supported releases](https:\u002F\u002Fgithub.com\u002Fprotocolbuffers\u002Fprotobuf\u002Freleases) to be\nthe easiest path.\n\nIf you choose to work from the head revision of the main branch your build will\noccasionally be broken by source-incompatible changes and insufficiently-tested\n(and therefore broken) behavior.\n\nIf you are using C++ or otherwise need to build protobuf from source as a part\nof your project, you should pin to a release commit on a release branch.\n\nThis is because even release branches can experience some instability in between\nrelease commits.\n\n### Bazel with Bzlmod\n\nProtobuf supports\n[Bzlmod](https:\u002F\u002Fbazel.build\u002Fexternal\u002Fmodule) with Bazel 8 +.\nUsers should specify a dependency on protobuf in their MODULE.bazel file as\nfollows.\n\n```\nbazel_dep(name = \"protobuf\", version = \u003CVERSION>)\n```\n\nUsers can optionally override the repo name, such as for compatibility with\nWORKSPACE.\n\n```\nbazel_dep(name = \"protobuf\", version = \u003CVERSION>, repo_name = \"com_google_protobuf\")\n```\n\n### Bazel with WORKSPACE\n\nUsers can also add the following to their legacy\n[WORKSPACE](https:\u002F\u002Fbazel.build\u002Fexternal\u002Foverview#workspace-system) file.\n\nNote that with the release of 30.x there are a few more load statements to\nproperly set up rules_java and rules_python.\n\n```\nhttp_archive(\n    name = \"com_google_protobuf\",\n    strip_prefix = \"protobuf-VERSION\",\n    sha256 = ...,\n    url = ...,\n)\n\nload(\"@com_google_protobuf\u002F\u002F:protobuf_deps.bzl\", \"protobuf_deps\")\n\nprotobuf_deps()\n\nload(\"@rules_java\u002F\u002Fjava:rules_java_deps.bzl\", \"rules_java_dependencies\")\n\nrules_java_dependencies()\n\nload(\"@rules_java\u002F\u002Fjava:repositories.bzl\", \"rules_java_toolchains\")\n\nrules_java_toolchains()\n\nload(\"@rules_python\u002F\u002Fpython:repositories.bzl\", \"py_repositories\")\n\npy_repositories()\n```\n\nProtobuf Compiler Installation\n------------------------------\n\nThe protobuf compiler is written in C++. If you are using C++, please follow\nthe [C++ Installation Instructions](src\u002FREADME.md) to install protoc along\nwith the C++ runtime.\n\nFor non-C++ users, the simplest way to install the protocol compiler is to\ndownload a pre-built binary from our [GitHub release page](https:\u002F\u002Fgithub.com\u002Fprotocolbuffers\u002Fprotobuf\u002Freleases).\n\nIn the downloads section of each release, you can find pre-built binaries in\nzip packages: `protoc-$VERSION-$PLATFORM.zip`. It contains the protoc binary\nas well as a set of standard `.proto` files distributed along with protobuf.\n\nIf you are looking for an old version that is not available in the release\npage, check out the [Maven repository](https:\u002F\u002Frepo1.maven.org\u002Fmaven2\u002Fcom\u002Fgoogle\u002Fprotobuf\u002Fprotoc\u002F).\n\nThese pre-built binaries are only provided for released versions. If you want\nto use the github main version at HEAD, or you need to modify protobuf code,\nor you are using C++, it's recommended to build your own protoc binary from\nsource.\n\nIf you would like to build protoc binary from source, see the [C++ Installation Instructions](src\u002FREADME.md).\n\nProtobuf Runtime Installation\n-----------------------------\n\nProtobuf supports several different programming languages. For each programming\nlanguage, you can find instructions in the corresponding source directory about\nhow to install protobuf runtime for that specific language:\n\n| Language                             | Source                                                      |\n|--------------------------------------|-------------------------------------------------------------|\n| C++ (include C++ runtime and protoc) | [src](src)                                                  |\n| Java                                 | [java](java)                                                |\n| Python                               | [python](python)                                            |\n| Objective-C                          | [objectivec](objectivec)                                    |\n| C#                                   | [csharp](csharp)                                            |\n| Ruby                                 | [ruby](ruby)                                                |\n| Go                                   | [protocolbuffers\u002Fprotobuf-go](https:\u002F\u002Fgithub.com\u002Fprotocolbuffers\u002Fprotobuf-go)|\n| PHP                                  | [php](php)                                                  |\n| Dart                                 | [dart-lang\u002Fprotobuf](https:\u002F\u002Fgithub.com\u002Fdart-lang\u002Fprotobuf) |\n| JavaScript                           | [protocolbuffers\u002Fprotobuf-javascript](https:\u002F\u002Fgithub.com\u002Fprotocolbuffers\u002Fprotobuf-javascript)|\n\nQuick Start\n-----------\n\nThe best way to learn how to use protobuf is to follow the [tutorials in our\ndeveloper guide](https:\u002F\u002Fprotobuf.dev\u002Fgetting-started).\n\nIf you want to learn from code examples, take a look at the examples in the\n[examples](examples) directory.\n\nDocumentation\n-------------\n\nThe complete documentation is available at the [Protocol Buffers doc site](https:\u002F\u002Fprotobuf.dev).\n\nSupport Policy\n--------------\n\nRead about our [version support policy](https:\u002F\u002Fprotobuf.dev\u002Fversion-support\u002F)\nto stay current on support timeframes for the language libraries.\n\nDeveloper Community\n-------------------\n\nTo be alerted to upcoming changes in Protocol Buffers and connect with protobuf developers and users,\n[join the Google Group](https:\u002F\u002Fgroups.google.com\u002Fg\u002Fprotobuf).\n","Protocol Buffers（简称protobuf）是Google开发的一种与语言和平台无关的数据交换格式。其核心功能包括通过定义数据结构来序列化结构化数据，支持多种编程语言的编译器和运行时库，以及RPC（远程过程调用）框架的集成。技术特点上，protobuf采用二进制格式存储数据，相比XML或JSON更高效；提供了protoc工具用于从.proto文件生成目标语言代码。适用于需要高性能跨服务间通信、数据持久化或者作为API接口定义的各种应用场景中，特别是在构建分布式系统时能够显著提高数据传输效率。",2,"2026-06-11 02:35:46","top_all"]