Competition for Vaadin expo booth visitor 2026

Have you visited the Vaadin booth in any of the Vaadin events in 2026?

Congratulations! In addition to finding the best web framework for Java, you also are qualified to participate in our Vaadin app competition.

You should have received an email from us with instructions on how to participate, and this is the post you can reply to join the challenge! Others can participate by liking and voting for the most awesome app.

Great prizes will follow! Stay tuned!

4 Likes

Hi! yes i want to join the challenge. I didn’t find this post until now but i have a project that im gonna post here :slightly_smiling_face:. I don’t see the tag " i-built-this" that was mentioned in the email. But i guess il post my project here then.

1 Like

Do you have a bunch of reindeer that needs a lover? Are you apart of the Sami people struggling to match your beloved reindeer? No?

Well now you can do it anway!

With reindeer-matchup you can manage and matchmake your reindeer in no time! :wink: Built with Spring Boot and Vaadin!

  • Add reindeer with personality traits: Friendliness, Adventurousness, Shyness, and Playfulness (0–100 scale)
  • Upload a profile image to show of your beautiful steed
  • Easily manage all reindeer in a grid based view
  • Match compatible reindeer based on their traits
  • Breakup unwanted matchups and decide your own
  • Already initialized with Santa’s favorite’s :santa:

On a more serious note. It’s more of a simulation but try to imagine all the capabilities! :wink:

It’s currently deployed on a free license with a limited amount of traffic on Render: https://reindeer-matchup.onrender.com/

otherwise you can access and run it locally by going to my Github: GitHub - AndreasBz/reindeer-matchup: This is a simple Vaadin reindeer love matchup simulation application 🦌. It will show some features of Vaadin and hopefully make you giggle a little bit. · GitHub

11 Likes

This is really cool.

1 Like

Sorry about that! The tag was indeed missing, but it is not really needed and you posted to the right place.
We have it now: vaadin.com/forum/tag/i-built-this

This one is awesome, and beyond what I was thinking is achievable. Smaller or bigger, I hope we see some more entries!

1 Like

My entry in the competition is Placeholder Mock. It’s a tool for mocking HTTP API responses. I didn’t manage to complete all the features I wanted, but it does have a UI built in Vaadin.

Define the routes to mock, start it up and then look at the UI as requests are received in real-time.

6 Likes

i-built-this
Thank you for this Vaadin challenge. I rebuilt a website using Vaadin and Java 25. Part of the code was build with an AI code editor and I made some changes to it and made the app more modern then its predecessor. I do security and wanted to recreate the OSINT Framework website and give it a more modern feel. Here is what I came up with: https://github.com/jonexume/the-osint-framework.git

6 Likes

i-built-this

This project is 100% inspired by Vaadin’s official Starpass demo: https://starpass.demo.vaadin.com/

It is not intended to be a pixel-perfect clone. The goal was to use that visual and product direction as a foundation for a Vaadin Flow with Aura reinterpretation focused on a more polished, product-oriented experience: stronger navigation, master-detail views, route-driven detail panels, demo data, and a more refined UI than the usual CRUD baseline.

The current scope includes:

  • Bookings
  • Admin / Users
  • Admin / Planets

With this project, I wanted to explore a more design-forward Vaadin Flow application, supported by a significant amount of custom CSS and layout work.

Live demo:
https://open-starpass.fredpena.dev/

GitHub repository:
GitHub - fredpena/open-starpass · GitHub

6 Likes

I built Meaningful Miles, a web application designed to make travel more accessible, safe, and personalized for individuals with disabilities, older adults, and those with other needs.

This project is from an Occupational Therapy perspective. It’s goal would focus on helping people participate in travel by identifying and reducing real-world barriers. My SO is an Occupational Therapist and this was one of those things that have some potential in the future for her.

For now , the scope is limited to some sample Hotel Lists and have that show up with Vaadin’s UI components. I created some sample hotels with scoring for accessibility. The user in this case would choose their profile and get recommendation based on their preference.

Github repo:

7 Likes

Hi! I’m submitting my app for the competition :tada:

:airplane: TravelCourier: Global parcel dispatch & tracking platform

Live Demo: travel-courier-production.up.railway.app

GitHub: GitHub - sbensarg/travel-courier: ✈️ Global parcel dispatch & tracking app — Built with Vaadin Hilla + React for Vaadin Competition 2026 · GitHub

Built with Vaadin Hilla + React + Spring Boot + Java 21

Features:

  • Animated landing page with particle effects
  • Real-time shipment tracking dashboard
  • Live courier chat: travelers can message their courier directly
  • Smart search & filtering by status, tracking code, city
  • Fully responsive mobile + desktop
  • Deployed live on Railway with Docker

This was my first Vaadin project, and I loved the Hilla + React experience!

i-built-this

5 Likes

i-built-this
Hi Vaadin community! :wave: Posting my app for the competition as well!

I’d like to share a project I’ve been building and get some feedback from the community.

Quarkus Chat PoC — AI-powered assistant with RAG + MCP

This is a proof of concept of an AI chat application built with Vaadin Flow and Quarkus, combining several modern technologies:

Stack:

  • Vaadin Flow for the UI
  • Quarkus (native image) as the backend framework
  • LangChain4j for AI orchestration
  • Ollama running qwen3:1.7b locally for LLM inference
  • PgVector (PostgreSQL) for RAG-based policy document retrieval
  • A custom MCP (Model Context Protocol) server for GitHub documentation search

How it works:
The chat client connects to three services:

  • an Ollama instance for general LLM responses
  • PgVector store for policy-related RAG queries
  • personal MCP server that exposes tools to search documentation directly from a GitHub repository.

One of the interesting challenges was getting everything to work in native image (particularly around Jackson serialization of the MCP protocol classes and Vaadin static resource resolution, both of which behave differently outside the JVM).

Repositories:

The whole stack runs via Docker Compose, including Ollama, PgVector, and both Quarkus native services (Speciffically on branch native_image you can find docker-compose and all the changes to make it work with native image :slight_smile: )

6 Likes

i-built-this

Hi everyone,

I built Storage Manager, a self-hosted inventory and expiry tracking app built with Vaadin, Spring Boot, PostgreSQL, Flyway, and Docker Compose.

The idea is simple: I wanted a practical way to track what is stored in numbered boxes, where each item is located, and when time-sensitive items are about to expire. The app manages storage boxes, item types, individual item instances,
images, best-before dates, and notification records.

The idea came when the Danish government literally asked us all to basically become Preppers following COVID-19 and war in Europe - And now I have implemented a version of my private app with Vaadin instead of Thymeleaf, and I do like it a lot more :smiley:

Current features include:

  • A Vaadin dashboard showing active items, expired items, items expiring soon, storage boxes, and pending notifications
  • CRUD views for item types, item instances, storage boxes, and notifications
  • Image upload and preview support for item types
  • JSON import/export for item types, including image data
  • Expiry warning and expired-item notification records
  • PostgreSQL persistence with Flyway migrations
  • Docker Compose setup for the app, PostgreSQL, and pgAdmin
  • Optional AES-encrypted PostgreSQL backups with retention cleanup

One thing I really enjoyed about building this with Vaadin is that the UI, validation, domain model, and backend services all stay in Java. Components like Grid, Dialog, Binder, Upload, SideNav, and badges made it quick to build a proper
admin-style application without switching mental models between frontend and backend code.

Tech stack:

  • Java 25
  • Spring Boot 4
  • Vaadin 25
  • PostgreSQL 16
  • Flyway
  • Spring Data JPA
  • Gradle
  • Docker Compose

The app is still evolving. Next steps include finishing Home Assistant/email notifications, improving NAS deployment support, and re-enabling security before exposing it outside a trusted local network.

I cannot post this on my corporate GitHub, so I will post it on my personal account instead:
GitHub: GitHub - TonnyMunkNielsen/storage-manager: App to keep track of items in boxes in your home or anywhere else. This project is entering the Vaadin "i-build-this"-contest of 2026 · GitHub

Screenshots from the app running locally:

Thanks for organizing the competition!

8 Likes

Hi there.

I (or rather claude code) build a Ukrainian-themed T-shirt shop on Vaadin 25 and Quarkus 3, using Java 25 and PostgreSQL.
It covers
the full shopping flow — customers can browse a catalog of 18 products, filter by theme, view details, add items to a
session cart, and check out. Order history is accessible by email lookup. An admin panel offers full product
management including image uploads, bulk stock adjustments, and a sales report.

On the technical side, all UI is built with Vaadin Flow server-side views. The catalog and admin grid make heavy use
of Vaadin’s Grid component with sortable columns, multi-select, and inline action buttons. Product forms live in
Dialog components with ConfirmDialog for destructive actions. Images are uploaded via Vaadin’s Upload component and
served back to the browser using DownloadHandler — Vaadin’s streaming API for binary data — pulling BLOB data lazily
from the database. The entire UI is styled with the Vaadin Aura theme and its design token system, avoiding any
hard-coded pixel values. Views are CDI beans wired together with Inject and PostConstruct, and navigation uses
Route with RouteParameters for parameterized URLs. Flyway handles all database migrations, including seed data and
product images. Tests are organized per use case using Vaadin’s Browserless Test library against an in-memory H2
database.

A Python script (generate_images.py) connects to a local ComfyUI instance and generates product images from a
dedicated per-product prompt column in the database. The generated images are base64-encoded and written directly into
a Flyway SQL migration as UPDATE statements, so they are applied automatically on the next app start.

Here’s a Screenshot from the App deployed locally (not allowed to post more):

More Details in de README.MD at GitHub - haggard1979/vaadim_playground1 · GitHub .

Thank you for organizing the competition, been real fun trying vaadin out :slight_smile:

5 Likes

i-built-this

Hello,

I would like to participate in the competition as well.

Inspired by the presentation “Chaos Meets Code: Fractals as a Playground for Modern Java Features” at JAX 2026, I developed a Spring Boot 4 / Vaadin 25 application to calculate and visualize the “Apfelmännchen” (the German term for the Mandelbrot set).

The application allows fast and smooth zooming using the mouse wheel, and also supports panning to explore different regions of the fractal. In addition, generated images can be saved for later use.

In contrast to typical Vaadin applications, I am using the image component to display pre-rendered PNGs. From my perspective, this highlights a gap in Vaadin, as a native canvas (or similar drawing component) would be highly beneficial for such use cases.

Sources can be found at my .

5 Likes

So happy that even Reindeer can finally find their match! Nice work :joy:

3 Likes

Cool applications! :star_struck: :star_struck:

I don’t know about the rest of you, but the email I received at the end of the Spring IO conference this year said that submissions deadline was 14th of May and that winners would be notified at the end of June.

I assume that I haven’t won, which is fine, but I would have appreciated a bit more communication from the Vaadin team.

How about an announcement or at least a comment in here stating who has won, or bare minimum, that a winner has been found and contacted?

I have tried writing an email replying to @Sami , but I got no response, so I’m trying here instead :)

Kind regards
Tonny

1 Like

Hi Tonny,

Thanks for contacting us!

Yes, the winner has been chosen and notified. Sorry, for not informing this to the forum.

I have been interviewing the winner and will post a summary of the interview for all of you to see.

Sorry for the inconvenience!

Kind regards,
Alisa / Vaadin

1 Like

A huge thank you to everyone who participated in our Competition for Vaadin expo booth visitors 2026!

It was fantastic to see so many creative and diverse applications built with Vaadin. We truly enjoyed exploring your ideas and the different ways you used Vaadin to solve real-world problems.

We have already contacted the winner and will publish a summary of an interview that we had with him! :slight_smile:

Thank you again to everyone who visited us at our conference booths last spring and took part in the competition. We hope you enjoyed the challenge, and we look forward to seeing you again at Vaadin booth!

2 Likes