Building Vaadin add-ons with minimal dependencies and Spring Boot setup

Building Vaadin add-ons with minimal dependencies and Spring Boot setup

In this blog, we'll show you how to minimize dependencies in Vaadin add-ons, use Spring Boot for easy development and testing, and set up a clean Maven project for compatibility with various tech stacks.

Subscribe to our newsletter

Be the first to learn about new Vaadin resources and tips

Learn how to use Web Serial API for device integration in Java web apps

Reading electronic competition card data with Web Serial API

In this blog, we'll cover how to integrate hardware devices like USB card readers with Java web apps using the Web Serial API in a Vaadin app. Many developers rule out web apps immediately when device integration is involved. But in many cases, it is for the wrong reasons. Technologies have ...
Learn how to host REST endpoints next to your Vaadin UI in this Vaadin tutorial.

Hosting REST endpoints next to your Vaadin UI

When building your UI with Vaadin, you need no REST endpoints. With Vaadin Flow, you don’t even need to think about what gets transferred between your browser and the server. But it is common for your Vaadin application to expose some REST endpoints, for example, to separate services or ...
Building responsive web design in pure Java.

How to implement responsive web design in Java

Responsive design aims to improve the usability of your app on different devices and varying window sizes. Many consider responsive web design to be a task dedicated to CSS magicians. With Vaadin, the same end result can also be accomplished in pure Java. In fact, you can achieve much more than ...
Explore top ways for creating grid layouts in Vaadin Flow, including add-ons, HTML tables, Bootstrap-like solutions, and CSS Grid for optimal performance.

Five methods to create grid layouts with Vaadin Flow

Vaadin ships with a powerful Grid component to display tabular data but is missing a built-in component for grid layouts. In theory, you could use the API in the data grid to lay out components, but this quickly leads to suboptimal performance, and the API is not designed for generic layouts. If ...
Trimmed-down Vaadin Flow setup for V24.4

Streamlined Vaadin Flow setup for V24.4

Vaadin 24.4 was a feature release mostly focused on improving React (and Hilla) interoperability and introducing Vaadin Copilot, the new AI-powered development mode widget. However, there are also a couple of quite nice improvements for pure Java developers. Even if none of those interests you, ...
How to create a custom Vaadin UI for an Apache Causeway application

Creating a custom Vaadin UI for an Apache Causeway application

The Apache Causeway project implements the naked objects pattern for Java. In the naked object pattern, the UI is essentially auto-generated based on the domain objects. With only the domain model, and typically some UI hints declared on the domain model, you get a fully functioning UI “for free.” ...
Learn how to open any file with Apache Tika.

Open any file with Apache Tika

I wrote a handy web utility for you. It can read pretty much any file, detect a mime type and some of its other (file-specific) metadata, and preview its content as text. I'm not sure if it is really useful for anybody, but at least I hope it will work as an example of using Apache Tika in your web ...
Think twice before overriding Object.equals()

Think twice before overriding Object.equals()

Overriding the Object.equals(Object) method, and its “companion” Object.hashCode(), provides your classes with some superpowers, but they are also one of the most common sources of problems that I see new and sometimes also more experienced Java and Vaadin developers struggling with. Some ...