spicyroman
6 hours ago
Vaadin 25.0 was just released, and the focus of this major version is a significant "slimming down" of the framework. For those who haven't looked at Vaadin in a few years, this release moves away from many framework-specific abstractions in favor of web standards.
Key Engineering Changes:
Standardizing on Lit: We’ve finally removed the legacy Polymer dependency. All components are now 100% Lit-based, resulting in smaller bundles and better performance.
Native CSS over Framework Config: Theming has been refactored to use standard CSS. You can now use @StyleSheet or native CSS @import directly, removing the need for Vaadin-specific theme JSON configurations.
Dependency Diet: We’ve trimmed transitive dependencies by ~30% by leveraging modern JDK APIs (Java 21 is now the baseline) and moving to Jackson 3 for communication, replacing the old Elemental JSON library.
Build Pipeline Unification: The "Production Profile" quirk is gone. A standard mvn package now produces a production-optimized build by default, making it much more compatible with standard CI/CD and Buildpacks.
Ecosystem Baseline: Updated to Java 21 LTS, Spring Boot 4.0, and Jakarta EE 11.
We’ve also introduced a new theme called "Aura" and added experimental support for Tailwind CSS integration.
Happy to answer any questions about the migration or the new architecture!