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 ...
Learn the six ways to get started with a Vaadin project quickly.

Six ways to quickly get started with your next Vaadin project

Starting a new project with an unfamiliar framework can be daunting. The steep learning curve involves mastering new syntax and concepts, often slowing initial progress. Troubleshooting can become a solo endeavor due to limited documentation and community support, and integrating the framework with ...
File-Based Routing in Vaadin 24.4: Simplify Hilla App Creation

Introducing file-based routing in Vaadin 24.4: Simplify Hilla app creation

With the release of Vaadin 24.4, developers building Hilla applications now have access to a powerful new feature: file-based routing. This enhancement streamlines the process of adding new views and configuring view properties directly within your React components. In this blog post, we'll explore ...
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 ...
Building AI-Powered Java Applications

Building AI-Powered Java Applications

In the past few months, I've spoken about building AI-powered Java apps at tens of events around the world. What I’ve seen is that Java developers are curious and eager to learn, but AI can seem like a big and daunting new area to get into. Most of us have demanding jobs that occupy our time, and ...
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, ...
Banner image with text: Building on Gemini 1.5 as a Java developer

Building a Vaadin & Gemini AI Chatbot

This is the first part of our in-depth series on building a Vaadin & Gemini AI chatbot. In part two, we’ll add context management and UI customizations to enhance the chatbot. This blog post will detail how to build a web application that allows the user to input text prompts and receive a text ...
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 ...