Document graphic with a check mark on the top-right corner displayed on a purple background.

Renewing the Vaadin License Checker

For those using one of our commercial products, you may have encountered the license validation window at some point: When you click on it or log in to vaadin.com to verify your identity, the system is notified that everything is okay, and it goes away, allowing you to continue building your app. ...
Jakarta EE, Spring Boot and the Vaadin logo displayed on a green background.

Jakarta EE is becoming mainstream – Get ready for Spring Boot 3 and Vaadin 24

TL;DR: The Java enterprise application ecosystem at large is making a backward-incompatible leap from the javax.* namespace into jakarta.*. To use next-generation application frameworks like Spring Boot 3 or Jakarta EE 10 compatible application servers, you'll need to use the soon-to-be-released ...

Develop a full-stack Java application with Kafka and Spring Boot

What You Will Build You will build a full-stack reactive web app that sends and receives messages through Kafka. The app uses Spring Boot and Java on the server, Lit and TypeScript on the client, and the Hilla framework for components and communication. A browser window with an app showing one ...
Purple background with a graphic of a lightbulb in the center.

Learn from the best – productivity tips from software architect Petter Holmström

Vaadin not only develops frameworks for building applications. We also develop actual applications. In all of these, we use our tools to some extent, but many deliveries by our Services department are fundamentally generic Java software projects, or consulting on them. This is probably the place to ...
A tree grid on a blue background

Inheritance vs Composition in Web Components

As developers, we strive for efficiency – not only in our code, but also in the software development process itself. One way to achieve this efficiency is to avoid redundancy and prioritize code reuse, so that we do not end up reinventing the wheel. Two tools that we have in our arsenal to achieve ...

Hot-deploy your code – keep focus on your work

Time is money. Something that I still don’t get is that many Java developers spend a lot of it (time and money) while waiting to see their latest code changes in action. JVM is known for its great peak performance when serving large numbers of users, but our tooling isn’t by default that well ...

Reactive endpoints: pushing data to the frontend

Despite being on the web where millions or billions of people move around every day, web applications always tend to start out as being single-user applications. Not in the sense that only one user can log in or one user can use the application at a time but, as a user of the application, you don’t ...

It’s time for hardware multi-factor authentication

Proper use of multi-factor authentication could stop most of the cyberattacks we see today, yet adoption remains low. Good security is usually at the expense of convenience, and multi-factor solutions that are easy to use are hard to implement. Fortunately, technology can be used to offset this ...

Seven traits of highly modernizable Java applications

Your developers write comments appropriately; you avoid deeply nested loops; and you make a point of detecting and removing duplicate code. Your team does these things, without hesitation, because everyone knows it makes your application easier to maintain. But how is your team making your ...