Build web Apps
100% in java
Vaadin is the open-source web framework for building enterprise apps in Java. From backend to modern UIs, Vaadin helps you deliver production-ready apps faster with a unified Java stack, built-in security, and enterprise-grade UI components.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
class ShipmentCard extends Card {
public ShipmentCard(ShipmentDto dto) {
setTitle("Shipment #" + dto.shipmentId());
setSubtitle(dto.shipmentRoute());
setHeaderSuffix(createStatusBadge(dto.status()));
setHeaderPrefix(new DriverAvatar(dto.driver()));
setMedia(new Image(dto.shipmentImageUrl(), IMAGE_ALT));
addThemeVariants(CardVariant.LUMO_COVER_MEDIA);
add(new Markdown(dto.shipmentDescription()));
addToFooter(
new PrimaryButton("Update Status", e -> openShipmentForm(dto)),
new Button("Track Shipment", e -> viewShipmentOnMap(dto))
);
}
}
void openShipmentForm(ShipmentDto dto) {/*TODO*/}
void viewShipmentOnMap(ShipmentDto dto) {/*TODO*/}
UI components for real business applications
Go from backend data to interactive UI in a few lines of Java. Components are accessible, responsive, testable, and support internationalization out of the box.
The web framework for Java developers.
Free & open source, Apache 2.0 licensed.
Use and extend Vaadin Core freely, even in commercial projects. Development happens in the open on GitHub, backed by a global community and the Vaadin team.
The Monthly Byte for Java Devs
Stay ahead in modern web development. Get a monthly roundup of Vaadin updates, practical tips, and deep-dive tutorials delivered straight to your inbox. Loved by 100,000+ developers worldwide. Delivered once a month.
More than a framework
Serious apps need more than pretty UI widgets. Vaadin lets you build data-heavy UIs quickly, edit visually in app, fast-track integrations, automate UI testing, modernize on your timeline, and stay supported for up to 15 years.