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 ...
A minimal OpenID Connect (OIDC)-secured Vaadin Flow application with Spring Boot

A minimal OpenID Connect (OIDC)-secured Vaadin Flow application with Spring Boot

So, do you want or need to build a Java-based web application that is secured by a Single Sign-On (SSO) login? This is a very typical use case where you have part of an application that is not public and requires an authenticated user to access it. You could build a login mechanism yourself, but ...
Minimalist Java apps with Vaadin and Spring AI

Minimalist Java applications with Vaadin and Spring AI

“Fight for Simplicity” has always been our motto. Personally, that has meant I want to keep simplifying my code. This post is an example of that effort. Revisiting AI integration in Vaadin applications A year ago, you could read about Harnessing Generative AI for Business Applications. This ...
Supercharge Your Productivity with These 5 Java Libraries

Top 5 Java libraries for boosting developer productivity in 2024

Java libraries enable developers to be more productive than with pure JDK alone. But not all Java libraries are created equal, and with dozens to choose from, finding the right ones to impact your team’s productivity can be challenging. To make the decision easier, the team at Vaadin has compiled a ...
Creating Custom Form Fields in Vaadin

Creating well-behaving form fields using CustomField

Developing well-structured Vaadin applications is essentially composing a lot of well-named custom components. Some of those components have a few more responsibilities than giving order and structure to your codebase – namely fields, the components you use in your forms to edit the properties of ...
4 Simple ways to display geospatial features in Vaadin Flow UIs

Four ways to display geospatial features in Vaadin Flow UIs

Java is a commonly used platform to edit geospatial data. There is almost an overload of various tools and libraries available. There are a number of UI widgets for Vaadin that allow you to plot and even edit geospatial information. The unique architecture of Vaadin Flow also allows you to build ...
Kotlin and Vaadin logos side by side in white

Build modern web apps 100% in Kotlin

Build modern web apps in 100% Java is the tagline often used for Vaadin Flow. By changing the language, this could actually apply to Kotlin as well, known for its Kotlin-to-JavaScript transpilation. Kotlin code can be transpiled to JavaScript for execution in the browser, so one could argue that no ...