The protobuf/grpc ecosystem in nodejs in a catastrophic state compared to other languages. Half of our stack is in go using grpc, but the other half is nodejs. We tried protoc-js/protobufjs neither of them works with even a slightly more complicated setup. A simple import sometimes can cause invalid code, or just simply breaks the build. The best solution is now to use stephenh/ts-proto which works great, except the lack of grpc and json_name (which is must because we often use json for node services) support.

i wish GRPC had a better escape hatch, so if my language doesn't support it or I only need one endpoint, I can just consume a GRPC service via a regular REST HTTP request.

That's available with GRPC to JSON transcoding https://github.com/grpc-ecosystem/grpc-gateway