Docs

Documentation versions (currently viewingVaadin 24)

Prerequisites

Set up your environment to get started with Vaadin.

Vaadin enables the creation of full-stack web applications in Java. The Vaadin Flow framework allows you to build even the user interface using Java only.

You can also build your user interface in React and TypeScript. In this case, Vaadin takes care of the integration to the Java backend through the Vaadin Hilla framework. This makes it easy to call Java services from the browser using a type safe API. You can even combine Flow and Hilla views in the same application.

To build full-stack Vaadin applications, you should be familiar with Java programming. If you want to use React for the user interface, you should be familiar with React and TypeScript as well. Basic knowledge of HTML and CSS is recommended.

On your development machine, you need to install a JDK and a Java IDE.

Install Java

Vaadin requires at least JDK 17, but you should use the latest Long Term Support (LTS) version whenever you can. In addition to picking a version, you also need to pick a distribution. You have multiple distributions to choose from, all based on OpenJDK. If you are unsure which one to pick, see the whichjdk.com website for independent, yet opinionated recommendations.

A good, default choice for Vaadin applications is Eclipse Temurin.

SDKMAN for macOS and Linux

If you use macOS or Linux, a more flexible way of installing a JDK is to use SDKMAN. SDKMAN is a tool that lets you install and switch between multiple JDK:s through a command line interface.

Install SDKMAN by following the SDKMAN installation instructions. After that, install the latest stable version of Java by running the following command:

sdk install java

You can also install a specific version of a specific JDK. See the SDKMAN usage instructions for more information.

Install an IDE

Different IDEs have different levels of support for Java and TypeScript. The following table gives a rough evaluation of language support in the most commonly used IDEs.

IDE Java TypeScript

IntelliJ IDEA Ultimate

☆☆☆

☆☆☆

IntelliJ IDEA Community Edition

☆☆☆

Visual Studio Code

☆☆

☆☆☆

Eclipse IDE

☆☆☆

☆☆

NetBeans

☆☆☆

☆ – Supported with a commercial add-on or a very limited free add-on

☆☆ – Limited built-in support or a free add-on with some limitations

☆☆☆ – Good built-in support or a good free add-on easy to install

Each IDE has installation packages for Windows, macOS, and Linux.

Tip
IntelliJ IDEA Ultimate gives the best developer experience.

IDE Extensions & Plugins

If you are using IntelliJ IDEA, install the Vaadin plugin.

If you are using Visual Studio Code, install the Vaadin extension, the Extension Pack for Java, and the Spring Boot Extension Pack.

If you are using Eclipse IDE, you should use the Eclipse IDE for Enterprise Java and Web Developers.