Top 5 most common Vaadin performance pitfalls and how to avoid them

A couple of weeks ago I was coding a demo app when it dawned on me that if I was to use my code in a real-world application, it would consume unacceptable amounts of memory once it reached 100 or more concurrent users. Vaadin Flow makes it easy to start coding web applications, even if you have no ...
Discord AMA image

AMA with Matti Tahvonen, Product Owner of Vaadin Flow

We held our first AMA (Ask Me Anything) with Matti Tahvonen, Product Owner of Vaadin Flow, on our official Discord server on February 4. Some very interesting questions came up and we’ve summarized the highlights in this post. First things first: who is Matti? In his own words: Hello, I’m one of ...
Test results

Introduction to load testing with Apache JMeter

Load testing allows you to simulate multiple users interacting with your application. This allows you to experiment with a real-world load on your application and understand its behavior under different levels of stress. In this article, I'll show you, step by step, how to run load tests on a ...
OSGi and Vaadin featured image

Re-introducing OSGi support for npm-based Flow projects

Vaadin has been a popular UI technology for OSGi-based Java solutions for years. Many OSGi users are still on Vaadin 7 or 8. Last year their migrations almost stalled, as Vaadin 14 only supported OSGi in the “compatibility mode". Compatibility mode uses the deprecated Bower + WebJars-based solution ...

Vaadin meets Vert.x

Vaadin server-side applications usually run in a servlet container, such as Jetty, Tomcat, or Undertow. However, Vaadin is not limited to these environments. The Vaadin building blocks are wisely designed on top of abstractions—VaadinRequest, VaadinResponse, VaadinService, VaadinSession, and ...
Vaadin 18 featured image

Vaadin 18 brings enhancements for Fusion and Flow

Today we released Vaadin 18. It contains new component features and enhancements for Fusion and Flow. New and enhanced components Avatar and AvatarGroup The new Avatar and AvatarGroup components display the user’s avatar image or their initials in a colored circle. Additionally, you can create a ...

Introducing Vaadin Flow and Fusion

We received a lot of feedback from our community regarding the TypeScript view support we added in Vaadin 15. Many of you were excited about the new capabilities it offers for Vaadin apps. But, there was also some confusion about this change. In particular, many in our community asked: "How does ...

Vaadin Key Concepts

This document is meant for developers who are new to Vaadin and want to get up to speed quickly. It gives you a quick overview of the core concepts and provides links to relevant documentation for further reading. It can also be used as a quick reference while developing Vaadin apps. If you don’t ...

Java Bean Validation: A Comprehensive Introduction and Best Practices

Jakarta Bean Validation (previously known as Java Bean Validation) allows you to define data validations using annotations in your Java Beans. Its motto is "constrain once, validate everywhere". Available implementations Jakarta Bean Validation is an API defined by the JSR 380. Currently, there are ...