Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more →
Top 10 TypeScript Protobuf Projects
-
tsrpc
A TypeScript RPC framework, with runtime type checking and serialization, support both HTTP and WebSocket. It is very suitable for website / APP / games, and absolutely comfortable to full-stack TypeScript developers.
-
SurveyJS
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
-
protobuf-es
Protocol Buffers for ECMAScript. The only JavaScript Protobuf library that is fully-compliant with Protobuf conformance tests.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
protobuf-project
Protobuf with Go import paths for Go and TypeScript: project boilerplate w/ Makefile. Supports grpc, vtprotobuf, drpc, ts-proto, twirp, starpc.
I created it so that I could use `protoc` and `ts-proto` to convert the otel proto files into typescript files.
> However, it's important to note that browser support wasn't a primary focus in gRPC's design. This oversight necessitates an additional component, grpc-web, for browser accessibility. Furthermore, external services often have specific needs like caching and load balancing, which are not directly catered to by gRPC. Adopting gRPC for external services might require bespoke solutions to support these features.
The article should mention the Connect protocol for web-based Protobuf messaging:
https://connectrpc.com/
Project mention: tRPC – Move Fast and Break Nothing. End-to-end typesafe APIs made easy | news.ycombinator.com | 2023-08-12DX for front or back end? The beauty of tRPC is that the types are derived/inferred from the backend runtime code (like, as you type). It would be nigh impossible to do that with grpc(-web) using proto files as the source of truth.
It's possible there's a project out there which could automatically produce proto files from something like zod, json-schema, etc. which could be directly interpreted by TS to provide similar (as you type) DX while still allowing some other language backend to consume the derived proto files (though the DX there would be less than ideal).
If you're just looking for similar TS clients/interfaces for grpc-web then I'd recommend https://github.com/timostamm/protobuf-ts which operates on plain JS objects (no new MyMessage().serialize(), instead the code generator mostly produces TS interfaces for you to work against: const myMessage: MyMessage = pojoConformingToInterface; const binary = MyMessage.toBinary(myMessage);)
Yes, you can. You are mistaking protobuf with gRPC. See this for more information.
I am trying to set up the pbkit language server for protobuf files. Since it is not part of the nvim-lspconfig repo's server configurations, I have to figure the way out myself. It doesn't seem to be too difficult, as I can start from the bufls configuration there. The following is what I have at the moment:
TypeScript Protobuf related posts
- Creating the Local First Stack
- Leveraging Temporal for resilient remote procedure calls (RPC)
- Connect RPC – A Better gRPC
- Deno-first implementation of protobuf Reader and Writer
- Building a modern gRPC-powered microservice using Node.js, Typescript, and Connect
- gRPC vs REST: Comparing API Styles in Practice
- gRPC + Envoy + grpc-web = scalable multiplexed streaming?
-
A note from our sponsor - InfluxDB
www.influxdata.com | 28 Apr 2024
Index
What are some of the best open-source Protobuf projects in TypeScript? This list will help you:
Project | Stars | |
---|---|---|
1 | ts-proto | 1,913 |
2 | tsrpc | 1,745 |
3 | connect-es | 1,202 |
4 | protobuf-ts | 944 |
5 | protobuf-es | 932 |
6 | pbkit | 289 |
7 | json-to-proto.github.io | 244 |
8 | openpgp-mobile | 21 |
9 | protobuf-project | 16 |
10 | deno-pbf | 4 |
Sponsored