Vaadin client only (Javascript) app


I need to develop a Javascript/HTML app for an existing back-end system. In the past I used some of the Vaadin web components for the UI. However, a solid app requires more than a bit of UI code (request routing, error handling, data-model, …). I’ve been looking at Vaadin 15 with TypeScript support, Vue.js, Angular, Vaadin-router, … All of these seems to provide some functionality I could benefit from. So far however, I didn’t find a complete solution.

Not sure if a client only (Javascript) app is one of the use-cases Vaadin had in mind, but … if anybody has suggestions on how to create a solid/secure/flexible Javascript app, including the Vaadin Web-components please do let me know.


Hi Sven,

Indeed, a complete app requires more than a UI framework. State management, routing, backend access, internationalization, security are also important aspects. I would use the ‘web framework’ as a term to describe a complete solution.

Vaadin strives to be a full-stack web framework, specifically targeting the apps with Java on the backend. In addition to the UI components Vaadin also includes routing, tight backend integration, security and more. However, the Java backend piece is essential here, because because making the web framework less genertic at the same time allows for more powerfull features. For example, starting with Vaadin 15, it allows stongly-typed API access from client-side code thanks to the ability to use the Java backend type information.

At Vaadin we believe that it fits best for the full-stack web apps, and most (or all) of the examples available at []
( include a Java backend. When it comes to purely client-side apps, we have no official examples / recommendations at this point.

Would you mind sharing some more details of your use case, if I reach out to you via email? As a product owner for the client-side parts of Vaadin, I’d like to better understand your use case. That would help us plan the next steps for Vaadin, and perhaps make it a better fit your your needs.

Vikor Lukashov

Product Owner