Vaadin Quickstart
app in 5 minutes
Before you start
Liberica, Temurin, or any modern JDK.
IntelliJ IDEA, Visual Studio Code or Eclipse
Download your starter
Click below to download a Spring Boot + Vaadin project starter.
You'll get a ready-to-run Task List app: a data grid, a Create button, and an empty-state message.
The defaults are fine for this quickstart, you don't need to change anything.
Want to customize a project? Open start.vaadin.com configurator, to pick a project type, theme, or pre-built views.
Experienced Vaadin developers use it for every new project.
Open it in your IDE
IntelliJ IDEA (recommended)
File → Open… and select the unzipped folder. IntelliJ detects the Maven project and imports dependencies automatically.
Visual Studio Code
Install the Extension Pack for Java, then File → Open Folder… and select the unzipped folder.
Eclipse
File → Import → Existing Maven Project and select the unzipped folder.
Enable Hotswap
Hotswap lets you change Java code and see the result instantly — no restart, no rebuild. Turn it on now: install the Vaadin plugin for your IDE and use it to start the application.
IntelliJ IDEA (recommended)
Open http://localhost:8080. The first start takes ~30 seconds while Maven downloads dependencies. You should see the Task List app — a grid with Description / Due Date / Creation Date columns.
Visual Studio Code
Install the Vaadin extension from the VS Code marketplace, then run Vaadin: Debug using Hotswap Agent from the command palette (or right-click the Application.java class and select Debug using Hotswap Agent).
Open http://localhost:8080. The first start takes ~30 seconds while Maven downloads dependencies. You should see the Task List app — a grid with Description / Due Date / Creation Date columns.
Eclipse
Install the Vaadin plugin from the Eclipse Marketplace, then right-click the project → Run As → Vaadin Application. Learn more
Open http://localhost:8080. The first start takes ~30 seconds while Maven downloads dependencies. You should see the Task List app — a grid with Description / Due Date / Creation Date columns.
Why a plugin? It launches the JVM with the right agent for hotswap, so your code edits (Step 4) appear live. Running with plain mvn spring-boot:run works, but you'll lose live code changes.
Make your first change
Open MainLayout.java. Find the visible app name the new Span("My Application")
and change it to new Span("Todo list");
Save the file. If you started the app via the Vaadin plugin (Step 3), switch to your browser —
the new name appears without a reload.
Don't see it? You're likely running without hotswap; restart the app using Debug using Hotswap Agent.
Make a change without writing code
Vaadin Copilot is a visual, AI-empowered development tool built into dev mode.
You can inspect components, drag-and-drop, edit themes, or just ask in plain English.
Open Copilot in your running app - click Edit mode in the bottom-right corner toolbar.![]()
or toggle it ⇧ + ⌘ ⌘ on Mac · ⇧ + Ctrl Ctrl on Windows / Linux
(Hold Shift and tap ⌘ or Ctrl twice)
Click the AI assistant icon in the Copilot toolbar and try a prompt:
Copilot prompt:
Add "ID" as the first column
Copilot edits your Java source directly, re-runs hotswap, and your app updates in place.
Open TaskListView.java in your IDE - the new addColumn(...) line for "ID" is right there in the code.
First-time AI use: Copilot will ask you to sign in with a free Vaadin account. The visual tools (drag-drop, theme editor, inspector)
work without sign-in.
You're All Set!
Where to next?
You just built a full-stack web app in Java.
Pick your next step. Build real apps with AI development tools, explore the components, and ship to production.