Vaadin is designed to be a one-stop solution to create web UIs, but you can also use some of its parts in isolation.

For the best effect, we recommend that you combine Vaadin with a well-documented Java back-end framework such as Spring, JavaEE/CDI, or OSGi. With these combinations, Vaadin can provide everything you need for fully featured web applications.



Java 8 or later; OpenJDK, Amazon Corretto, Oracle JDK

Programming Languages

Java, Groovy, Kotlin, etc.

Java Frameworks

Spring, JavaEE/CDI, OSGi, etc.


Eclipse IDE, NetBeans IDE, IntelliJ IDEA, VS Code, etc.

Servlet Containers

Apache Tomcat, Apache TomEE, Wildfly, Glassfish, JBoss, Jetty, etc.

Server-Side Build Management

Maven (3.5 or newer) or Gradle (6 or newer)

Client-Side Build Management

Node (10 or newer) / npm (5.6 or newer)


Firefox, Chrome, Safari, IE11, Edge, etc. (See release notes)

Please see the release notes for the particular Vaadin version you are using for a more complete list of requirements and compatibility.

On the client-side, any Vaadin component can be used independently without the full framework. Dependencies are managed through npm. In addition, Vaadin Router works well on its own, and can be used in lightweight client-side applications.