Documentation versions (currently viewingVaadin 24)

Starting a Project

The recommended way to start a new Vaadin project is to use Vaadin Start. It allows you to configure and download a customized starting point for an application.

Vaadin Start Features

Vaadin Start allows you to configure and download a Vaadin project. You can then use this project as a starting point to create your own Vaadin application.

Among other things, Vaadin Start enables you to do the following:

  • Add several views to the application. You can select the initial content of each view from a list of more than fifteen templates. For example, you can include views based on the Master-Detail template, which can be used to manage the data of an entity.

Master-Detail Template
  • Add and modify JPA entities. These entities are downloaded with the generated project, along with their corresponding Spring Data classes, such as the Repository and Service classes.

Edit Entities
  • Set up security and configure access control. These can be configured for a specific view or the entire app.

Set up security and configure access control
  • Change the look and feel of the application. Specifically, you can adjust the application’s colors, typography, style, sizing, and spacing.

Customize Application Theme
  • Add helpful project settings. With this, for example, you can generate the deployment files for Docker and Kubernetes, or you can select between H2 and PostgreSQL as the database to use for the project.

Add helpful configuration settings

Non-Spring Boot Starters

Applications created using Vaadin Start are based on Spring Boot. You can find Vaadin Flow starters for other technology stacks, such as JakartaEE, or plain servlet on GitHub.

Next Steps

Once you’ve downloaded a starter project and have extracted it in a local folder, you can import it to your favorite integrated development environment (IDE) and start developing it.

New project flowchart
Ways to Create and Run a New Project

If you create a project outside an IDE, you need to import it into the IDE. During development, you can run the project with a Maven target, depending on the technology stack you’re using. After you have the project in your IDE, you can run or debug it.