I wouldn't recommend Vaadin. I worked on a work project using Vaadin 10+. Despite 10 and 14 being LTS releases they felt like they should still be in beta, my team ran into countless bugs. Vaadin didn't fix any of these bugs with any sense of urgency, even with a paid support contract (obviously less relevant for a side project). Working on that project almost made me leave the company, and the use of Vaadin was a significant factor in that.