Author: Matti Tahvonen
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 ...
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 ...
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 ...
Persist your data with pure Java
In the fast-paced world of software development, efficiency and simplicity often dictate a project's success. This is why many Java developers have chosen Vaadin. With Vaadin, you can use a single language and execute your code in a single execution environment to create compelling web UIs. This ...
Forget passwords - Accessing WebAuthn API with Vaadin
Various WebAuthn/passkey-related questions have been trending in the Vaadin community, and unsurprisingly so. In 2024, "passkeys" should become the only acceptable authentication method for any self-respecting software craftsman, and passwords should be burnt with 🔥. Some questions have been ...
Asynchronous JavaScript execution in Vaadin Flow
Web applications built entirely in Java. That promise holds true when core Vaadin Flow components and browser APIs are enough. However, if you’re creating custom components or using modern asynchronous browser APIs, you’re likely to encounter a very different kind of “Promise.” JavaScript's ...
Testing Vaadin applications and add-ons using Playwright
Playwright is a browser automation tool similar to Selenium (WebDriver). These tools can be used as such to implement end-to-end tests that simulate actual user actions through the browser. Often, those are used through higher-level testing libraries such as Vaadin TestBench (built on top of ...
Embedding Vaadin Flow apps in a React-based web app
In my recent blog post, I discussed wrapping a component implemented with React in a Vaadin application. A greatly undervalued way to use Vaadin is by implementing only certain functions or parts of your web app or website. In that case, we are essentially doing the opposite: wrapping a Vaadin ...
Lazy Loading Hierarchical Data for Efficient UI and Database Performance
I shared my experience with performance optimizations a couple of weeks ago at our Vaadin Create conference. One key takeaway was implementing lazy loading at the client-server and database layers. Lazy loading essentially transfers only the required data to the client and requests a reasonable ...