When building something new, what kind of protocol do you use for your APIs? I'm kinda curious, since I often built REST APIs in the past, but switched over to gRPC for new projects (which is also why we built https://kreya.app).
Would be glad to hear your opinions regarding these protocols, since they all have different advantages and disadvantages.
I think they all have their rightful place in the ecosystem. GraphQL for complex data models and flexible requirements, gRPC when performance is paramount, and REST(ish) APIs for everything else. I still mostly work with the latter as it is stable and has good tooling support. So far I felt gRPC is a little inaccessible but I want to look into it more, so I bookmarked the Kreya app you mentioned as it appears to be helpful.
Thank you! Very good summary, couldn't agree more. What I like about gRPC is the automatic code generation in many languages, so you don't have to manually create your API models.
My API is in C# which support perfectly REST.
I find using graphQL on a strongly typed language to be a hassle.
On the front-end, even if it can become bloated, GraphQL is nice to use obviously.
I have had the same experience. GraphQL is nice for consumers, but can be complex to implement on the backend.
Obviously GraphQL.
https://2020.stateofjs.com/en-US/technologies/datalayer/#datalayer_experience_ranking
Why are they comparing Redux to GraphQL? One is about state management, the other not so much.
Also makes no sense to put Apollo there, as it's just a Lib to facilitate GraphQL implementations.
Agreed. Don't know the reason behind that.