Documentation versions (currently viewingVaadin 14)

This tutorial is for an old Vaadin version. Read the same tutorial for the latest Vaadin version.


This tutorial is for Vaadin 14.
If this is your first time trying out Vaadin, you should read the same tutorial for the latest Vaadin version instead.


This tutorial series teaches you how to build, test, and deploy a modern web app from scratch. You’ll learn to use Spring Boot and Vaadin.
Project Setup
Learn how to open and debug a Vaadin project in IntelliJ. Set up IntelliJ for better autocomplete support.
Creating a View
Flow uses an event-driven component model for building UIs. This tutorial covers the basics.
Creating a Component
Learn how to compose reusable components with basic layouts and components.
Accessing The Database
Learn how to connect a Vaadin Flow view to the backend through Spring Services.
Forms and Validation
Learn how to use Binder to bind a data object to input fields and validate input.
Handling View State
Learn how to communicate between components in Vaadin Flow.
Navigation and App Layout
Learn to set up a parent layout and navigate between child views.
Login and Authentication
Learn to set up Spring Security to restrict access to views in a Flow application.
Installation and offline (PWA)
Learn how to define a custom offline page and enable installation on supported devices.
Unit and Integration Testing
Learn how to run unit and integration tests on Vaadin Flow apps.
End-to-end testing
Learn how to do full-stack tests on a Flow app using Vaadin TestBench.
Production Deployment
Learn how to prepare a Vaadin app for production and how to deploy it on Heroku.