Make the loading indicator in Vaadin great again

learn how to customize the vaadin loading indicator

Every interaction in a Vaadin UI sends a request to the server. If that response takes longer than ~300 ms, Vaadin shows a loading bar across the top of the page to prevent user confusion. It appears the moment the request leaves the browser and disappears as soon as the response returns.

Subscribe to our newsletter

Be the first to learn about new Vaadin resources and tips

how to integrate the Web Share API with Vaadin

Sharing made simple: Integrating the Web Share API with Vaadin

The Web Share API is a modern browser feature that enables users to easily share content—like URLs, text, or files—via the operating system's native sharing dialog. This is especially handy on mobile and touch-based devices, where copy-paste workflows can feel clunky. As developers, we often rely ...
choosing the right JVM for your vaadin app

Choosing the JVM that powers your Vaadin application

Vaadin Flow is a full-stack Java web framework that runs all UI logic server-side on the JVM — eliminating the need for REST APIs or duplicate JavaScript. This lets teams deliver full-stack features in minutes or hours instead of days, speeding up development for internal tools, enterprise ...
Which notifications are best for your Java app: web, Vaadin, or push?

Which notifications are best for your Java app: web, Vaadin, or push?

Vaadin developers are no strangers to the Notification component. It has for almost two decades served as a reliable way to notify users about important events—whether it’s the success or failure of an operation or the completion of a time-consuming background task. But the web platform has evolved ...
5 tips for mobile optimizations for full-stack Java apps

5 tips for quick mobile optimizations

Progressive Web App (PWA) development with Vaadin makes it easy to build responsive, mobile-friendly business applications using Java. Vaadin components are built with responsiveness in mind, and by using tools like the AppLayout, your top-level navigation is already mobile-aware — adapting well to ...
Explore three ways to connect UI components in Vaadin Flow using SVG and LeaderLine.

How to draw a line between Vaadin components?

Interesting question, and I’m sure you are not the first one to have it, I answered a booth visitor at JCON 2025. The Vaadin developer wanted to show a connection between two UI components, to show some sort of relationship between those. I thought that using SVG it ought to be “straightforward” ...
5 key considerations for starting a new Java project in 2025

5 key considerations for starting a new Java project in 2025

Java remains a strong choice for new application projects. If starting a new Java project in 2025, platform independence, robustness, a rich library ecosystem, good performance, and strong security are the keywords you are looking for. Let’s take a better look at the decision-making process for a ...
How to Add Passkey Authentication to Your Spring Security Java App

Path to passkeys with Spring Security

There are many ways to utilize passkeys. Handling authentication internally within your app may not be the fanciest way to do it in 2025, but for legacy apps and when aiming for architectural simplicity, handling passkeys by yourself, like handling usernames and passwords, can still be a ...
Learn how to track vessels in real-time with a Java web app using AIS data, MQTT messaging, and Vaadin's WebSocket-based UI.

True nerd stuff: Plotting vessel positions with AIS, MQTT & WebSockets

I recently blogged about my enhanced web UI for a ferry reservation system we use on my "home island." It has lately been gaining more users and feature requests. As an old orienteer, I desperately wanted to see where the ferry was in real time, so I could optimize those last couple of minutes in ...
how to integrate web components into Vaadin Flow apps

How to integrate external components into a Vaadin Flow application

With Vaadin, you’re not limited to just Java-based components provided by Vaadin or the Directory — you can seamlessly integrate a wide variety of frontend elements and libraries into your Flow-based application. Whether you’re dealing with native HTML elements, custom Web Components, React ...