github vaadin/platform 25.3.0-beta2
Vaadin 25.3.0-beta2

latest release: 14.14.6
pre-release6 hours ago

Upgrading · Docs · Get Started

This is a pre-release for the Vaadin 25.3. We appreciate if you give it a try and report any issues you notice.

New and Noteworthy Since Vaadin 25.2

Platform

  • New vaadin-ee artifact: an Enterprise Edition umbrella alongside vaadin and vaadin-core.

Flow

  • HTML Table components: A new Table component family for building semantic HTML tables in Java, with captions, column groups, header/body/footer sections, spanning and signal-bound rows. The API only lets you build tables the HTML specification allows. Deprecates NativeTable.
  • Validation groups in Binder: BeanValidationBinder can now validate against specific JSR-303 validation groups, so one bean can carry more than one rule set. setValidationGroups(...) sets the rules enforced as the user types, and a one-shot validate(Publish.class) / isValid(Publish.class) checks the stricter rules that should only block saving or publishing. Required indicators follow the groups actually in effect.
  • Dev loop daemon: a new vaadin-dev CLI, installed with mvn vaadin:install-dev-cli, owns the edit-to-running-app loop from a long-running daemon: background compilation, hot swap or restart as the change requires, CSS and theme pushes into the open page, and browser refresh. One vaadin-dev apply reports whether your change is actually live, as an exit code, so coding agents stop guessing. Targets AI development.
  • Service event bus: a VaadinService event bus replaces the session lock and RPC invocation listeners added in 25.2, and reports data provider count and fetch queries on the same bus.
  • Client engine rewritten in TypeScript: The client-side engine that runs in the browser has been ported from GWT to TypeScript, making it easier to debug and provide source maps. Purely internal: no application code changes required.
  • Also: Element.whenAttached for attach scoped setup and cleanup

Hilla

  • Object models in Auto components: AutoGrid, AutoForm and AutoCrud accept @vaadin/hilla-models object models.

Design System

New components

  • Switch: a new input field that presents a binary on/off choice as a toggle, for settings that take effect immediately
  • Breadcrumbs: A navigation trail showing users where they are in the app's page hierarchy, built automatically from your routes or defined manually. (Previously shipped behind a feature flag.)

AI Integrations

  • Split by tier: vaadin-ai-core-flow is free and ships in vaadin-core, vaadin-ai-extensions-flow is commercial and ships in vaadin and vaadin-ee.
  • Form AI controller: source tracking and confidence levels for AI filled values, a revertable field marker replacing the previous highlighting, plus field state awareness and cross field validation.
  • Orchestrator: a request interceptor, per turn session context, response metadata including token usage, ToolException for LLM safe tool errors, and background execution for the built in providers.

New in existing components

  • Date Picker and Date Time Picker: disabled dates and disabled weekdays, a date metadata provider for styling, and a default time filled in when a date is picked.
  • Grid: no data is generated or sent for hidden columns, and row details and selection are decoupled from activeItem.
  • Also: Combo Box partial match mode, a Dialog autofocus API replacing the focus trap, Message List bubble and one-to-one variants, Tree Grid selectAll() selecting descendants, signal binding for Markdown content, zoom limits on Map, Aura variants for Checkbox and Progress Bar, and Spreadsheet fixes.

Accessibility and i18n

  • GridI18n: accessible names for selection checkboxes and sorters.
  • Also: an accessible name for the Date Picker calendar overlay, keyboard resizing and separator label i18n in Split Layout, AriaLinkMode on Tooltip, configurable heading levels in Login and Accordion, and HasAriaRole adopted by Dialog, Popover, Badge and Card.

Copilot

See the Vaadin Copilot documentation.

  • Kotlin project support: Copilot works on Kotlin projects (not 100% feature parity yet, unsupported features disabled instead of failing).
    FormLayout in the UI Library: drag and drop into a FormLayout and edit its responsive steps. Switch, Breadcrumbs and Dashboard join the palette.
  • Aura global theme editor: color scheme modes, accent colors and reset.
  • Also: an experimental All Components view, route editing with unsaved changes dialogs, an icon picker, Spring Security setup buttons, editing components injected through dependency injection, HTTP proxy support, connectivity diagnostics, performance improvements on large applications, and a visual refresh of panels and dialogs.

Testing

A SwitchTester for the new Switch component, Grid column elements exposed as real TestBench elements, and fixes across the Select, Time Picker and Date Time Picker testers.

Observability Kit 5 (Pro)

Agent less rebuild on Micrometer. The OpenTelemetry Java agent of 4.x is gone: adding a dependency is enough, with no -javaagent and no separate collector required to get started.

  • Two integrations: observability-kit-starter for Spring Boot, observability-kit-spring for plain Spring. Both support GraalVM native image.
  • Vaadin specific metrics and tracing: sessions, UIs, requests, RPC and session lock, navigation timing, errors attributed to route and component, UI state size, and data provider queries. Spans go through the Micrometer Observation API.
  • Also: an insights endpoint for backtracking failed and slow user interactions, a live metrics panel in Copilot, configuration through an ObservabilitySettings builder and vaadin.observability.* properties, and a failed license check degrading to no telemetry instead of failing startup.

Changelogs

Official add-ons and plugins:

  • Spring add-on (25.3.0-beta2)
  • CDI add-on (16.1.2)
  • Maven plugin (25.3.0-beta2)
  • Gradle plugin (25.3.0-beta2)
  • Quarkus plugin (3.2.2)

Don't miss a new platform release

NewReleases is sending notifications on new releases.