{"repo":"timostamm/protobuf-ts","free":true,"listed":false,"github":"https://github.com/timostamm/protobuf-ts","clone":"git clone https://github.com/timostamm/protobuf-ts.git","description":"Protobuf and RPC for TypeScript","language":"TypeScript","stars":1343,"topics":["twirp","grpc-web","bigint","code-size","reflection","typescript","protobuf","custom-options","well-known-types","strict-conformance"],"license":"Apache-2.0","category":"dev-tools","readme_excerpt":"protobuf-ts =========== Protocol buffers and RPC for Node.js and the Web Browser. Pure TypeScript. For the following .proto file: protobuf-ts generates code that can be used like this: What are protocol buffers? Protocol buffers is an interface definition language and binary serialization format. Data structures defined in .proto files are platform-independent and can be used in many languages. To learn more about the capabilities, please check the official language guide. Quickstart - npm install --save-dev @protobuf-ts/plugin protoc installs the plugin and the compiler \"protoc\" - download the example file msg-readme.proto and place it into a protos/ directory - npx protoc --ts out . --proto path protos protos/msg-readme.proto generates msg-readme.ts if your protoc version asks for it, add the flag \"--experimental allow proto3 optional\" Features - [x] implements the canonical proto3 JSON format - [x] implements the binary format and respects unknown fields - [x] strictly conforms to the protobuf spec - [x] generates clients that can be used with the gRPC web, Twirp or gRPC protocol - [x] generates native gRPC servers and clients for usage with @grpc/grpc-js - [x] supported by Twirp-TS for Twirp servers running on Node.js - [x] can optimize for speed or code size - [x] supports proto3 optionals - [x] supports bigint for 64 bit integers - [x] every message type has methods to compare, clone, merge and type guard messages - [x] provides reflection information, including custom ","default_branch":null,"files":null,"tree":[],"storefront":"/r/timostamm","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/timostamm/protobuf-ts/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}