Adding JSON-LD and Open Graph to Vaadin apps for link previews

How to improve link previews of your Vaadin apps

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.

Subscribe to our newsletter

Be the first to learn about new Vaadin resources and tips

Best practices for theming Vaadin applications

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 ...
Building a local file manager with Vaadin

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

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 ...
Common pitfalls in Java development: Using Java classes for cleaner code

The fear of classes is real—Here’s how to beat it in Java

“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 ...
Take your UI designs from Figma to Java code with Vaadin Copilot

From Figma design to Java code with Vaadin Copilot

UI design and implementation often feel like two distant planets in separate solar systems. However, with the release of Vaadin Copilot and its powerful Figma Import feature, transforming Figma designs into code has never been easier. When tasked with creating a “User Profile Page” for a small web ...

More CRUD with less LOC: Simplifying data management with Vaadin’s AutoCrud

With AutoCrud, Vaadin has a powerful React component that simplifies creating a full CRUD for a Java entity in just a few steps. The acronym CRUD stands for Create, Read, Update, and Delete database operations—basic functions for editing data in a form. The AutoCrud component provides the following ...
Mastering internationalization in Vaadin: A step-by-step guide

Mastering internationalization in Vaadin: A step-by-step guide

Building applications for a global audience requires more than just translating text. It's about creating a user experience that feels native for users in different regions, regardless of their language or cultural background. This is where internationalization (i18n) and localization (l10n) come ...
How to publish Java libraries to Maven Central using your GitHub account

How to publish Java libraries to Maven Central using your GitHub account

The Central Repository, often referred also as Maven Central or simply Central, is the primary repository for publicly shared JVM libraries, independent of the actual build tool. For example, since JCenter was closed, you are most likely using Maven Central, even if you wouldn’t be using Maven. ...
How to display Java objects in the UI

Three quick ways to display your Java objects in the UI

As a developer, there often comes a time when you need to quickly display your data structures in a human-readable format on the screen. During development, debuggers often provide a nice tree-like view of your data objects, which helps visualize the structure. Building something similar manually ...