Support gRPC
What's missing?
I understand that rocket is focusing on web framework. However as micro services become more popular these days we should also provide gRPC support in the framework.
Ideal Solution
No response
Why can't this be implemented outside of Rocket?
It can be implement outside of rocket however if we want to use one library to acting as a micro service backend then we shall allow it to do so inside the rocket library.
Are there workarounds usable today?
No response
Alternative Solutions
No response
Additional Context
No response
System Checks
- [x] I do not believe that this feature can or should be implemented outside of Rocket.
- [x] I was unable to find a previous request for this feature.
is this still available, if it is i'd like to work on this
@Muktarsadiq The author is quite busy recently you can try to work on it.
Thanks for the green light! Before I dive in, I'd like to ensure my approach aligns with Rocket's architecture. Could you provide some initial guidance on:
- Should gRPC support be implemented as a core feature, or as a separate rocket_grpc crate?
- Which modules would need modification (routing, request handling, etc.)?
- Are there any architectural constraints I should be aware of?
- Would you prefer I start with a design proposal/RFC before coding?
I want to make sure any PR I submit fits the vision for the project.
+1 for gRPC support.
- Something that makes it easy to configure multiple keys per deployment would be an awesome feature. For example, a tenant might be a part of a multi-tier CA. Root, Intermediate/Tenant, Service. Having the key details in a method handler would be a really nice auth feature.
- rustls before native-tls is a nice to have, in my opinion
- I imagine there might need to be a different API than form handlers, for gRPC. However, I'd be impressed if you were able to integrate the two using traits
- I could help test this
@Muktarsadiq sorry I am not the author but I know he is very busy for his own stuff recently. :(