Hello all, I am currently evaluating gRPC for an IoT type application. We currently have several microservices written in Js that talk a custom protocol but we want to move on to Typescript and a standard RPC mechanism.
I have quiet a few questions on the state of the gRPC/Node.js project and implementation: 1 | What is the relationship of the projects on https://github.com/grpc/grpc and https://github.com/grpc/grpc-node? Where should I file Node.js or Js specific issues or PRs? 2 | What is the relationship of grpc-node and protobuf.js? The grpc-native-core package has a dependency on an outdated protobuf version (^5.0.0) but from what I gather from grpc-protobufjs, it can somehow also deal with protobuf.js 6. How does that work? To me this kind of flexibility seems to make the project overly complex. Also, looking into https://github.com/grpc/grpc-node/issues/15 gives me the impression, that protobuf.js 6 is not fully supported yet. 3 | Code generation: Both grpc-tools and protobuf.js contain a code generator. My impression is that the grpc-tools generator generates only service files, while the one from protobuf.js also generates stubs for message definitions (and also Typescript definitions in v6.8). How are these supposed to be used together? Are there any plans to make this easier and more coherent? 4 | Typescript: I think it would not be too hard to generate Ts definition files alongside the Js files, all relevant type information is here. I currently have manually written definition files for my message types and services, but those need a few modification to grpc-native-core/index.d.ts. There are a lot of missed opportunities in type safety here, falling back to the 'any' type, when a generic parameter would work. But before tackling this area, I need to have the previous questions answered. Also, is there any general interest in this area from other people? Are there any plans to make the Typescript integration better? 5 | I think the documentation is really lacking: -- You received this message because you are subscribed to the Google Groups "grpc.io" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/grpc-io. To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/c97c9be6-1b6c-433a-939c-bc37d4112bcc%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
