Vaadin, GRPC or GraphQL

Dear readers, have you used either Grpc or GraphQL or both successfully with Vaadin 12+? Maybe you know github examples or online discussions.
What were the pluses and minuses?

We were going to use React in our front-end but decided to take a look at Vaadin again, as we are so fed up with the numerous third-party plugins and libs required, not to mention the learning curve, and how quickly, these JavaScript libraries and frameworks go out of fashion.

We seek stability and believe that Vaadin can provide us that, but our project is written with Grpc to facilitate inter-microservice communications, and (in addition to GraphQl) communicate with the front-end. I provide these facts so that respondents don’t try to recommend that we abandon these tools and rewrite the whole project with some other UI libs or frameworks of their choice. We would rather go back to using React at this stage of the project.


We used Vaadin 7/8 with Grpc for one of our projects. There was an extra step involved to connect BeanItemContainers to the Grpc clients, but, it was not particularly difficult. Vaadin, at that time, seemed to have a bias towards the front-end containers hitting the database directly, so, there was a little bit of inertia to overcome.

I would say the pluses include execution speed and ease-of-use, once you got the initial wiring done. The minuses include a little square-peg/round-whole mapping trying to convince Vaadin to use Grpc instead of direct database queries.

All-in-all, would do it again.