We use cookies to serve our customers and website visitors in the best possible way. Cookies are used for the proper functioning of the website and for improving the user experience, monitoring visitor traffic and marketing purposes. By continuing to browse the site, you agree to our use of cookies. You can read more about cookies here.
Vaadin Blog

Extracting structured data from images using AI in Java
As AI models have become better at handling multimodal input like images, new opportunities have opened up for us when building business applications in Java. In this blog post, I'll examine how we can use Open AI and Spring AI to extract information from an image into a Java record that we can use ...

The best frontend frameworks to use with Spring Boot in 2025
Spring Boot is a preconfigured version of the Spring framework that makes it easy to create stand-alone, production-grade applications. Spring Boot is a backend framework that has become a major player in the enterprise Java ecosystem. It lets Java developers start building web applications ...

Adding JSON-LD and Open Graph to Vaadin apps for link previews
Links are crucial for user experience and discoverability, even in apps behind login screens. This tutorial shows how to use JSON-LD and Open Graph metadata to create better link previews, improve branding, and boost engagement. So, why does linking even matter? First, we must accept that Vaadin ...

The Snow Reindeer release: What’s new in Vaadin 24.6
As announced in Joonas Lehtinen’s product keynote at Vaadin Create, with Vaadin 24.6, we’ve taken a step back from introducing new features to focus on something equally important: refining the foundation. This “Snow Reindeer” release is dedicated to enhancing stability, boosting performance, and ...

Theming Vaadin applications: a practical guide
The appearance of a web application plays a key role in the user experience and how your Vaadin application will be accepted in your Usergroup. With Vaadin's powerful theming system and style options, you can customize your application's design to meet the requirements of corporate brandings and ...

The Vaadin Way: A modern approach to building Java web apps
We understand that building business applications is both an art and a science. Our platform is designed to empower developers to craft modern, high-quality web applications in Java. However, with versatility comes the challenge of figuring out the best way to leverage it—some approaches lead to ...

Building a local file manager with Vaadin Flow
Handling file uploads and managing stored files is a common requirement in web applications. However, creating a robust and user-friendly interface can be challenging. This post demonstrates how to build a file management application using Vaadin Flow, showcasing how Vaadin's components, data ...

Displaying streaming markdown in Java and React UIs with Spring AI
Tools like Spring AI make it easy to call LLMs from Java. However, interacting with LLMs has created a new challenge when building UIs: How do we stream the generated Markdown content to the UI and render it efficiently? In this blog post, I'll show you how you can display live-updating markdown ...

Don't be afraid of classes
“Java is a high-level, class-based, object-oriented programming language” - Wikipedia. I get to see and read a lot of Java code at work. Sometimes, I even get to write some.🥳 Recently, I have noticed a tendency that we Java developers are, for some (wrong?) reason, afraid of classes. A class is a ...