The application with different theme variants

Vaadin 14.6 brought an improved theming mechanism which makes it easy to package and reuse themes. While switching between packaged themes at runtime is not supported, a single theme can support multiple looks and feels with just a few lines of CSS. …

A part of the source code and a screenshot of the application being tested.


To test our application from end to end, we use Playwright to control a browser. The browser interacts with our running application as a user would. We organize the code into test cases and run them with Junit.

The base for the Vaadin 19 application I am testing was generated…

A Liquibase change log

Running Liquibase from Java is useful to ensure a schema is up to date on startup, or to update a schema as part of an integration test.

All code in this post can be found on GitHub.

The first step is to add the Liquibase core dependency from Maven central

A screenshot showing the finished application, with a grid listing some stocks
The finished application

Vaadin 15 adds the option to enhance your Java application with views written in TypeScript, without the need for a server-side state.

This post will guide you through creating a simple stock tracker application, saving your favorite stocks to the server and using the Financial Modeling Prep API to get…

Image by dying_grotesque licensed under CC BY 2.0

Some things are best kept secret. This goes for data too. In this tutorial, you will learn how to implement a simple access-control system using plain Vaadin and Java.

We do this in four steps: create the login view, authorize the user, authenticate the user, and create the logout button.

This tutorial does not cover how the user credentials are stored, nor how to protect static resources, such as CSS and images.

The methods used here can be applied…

Erik Lumme

Software engineer working with Java and related technologies

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store