Skip to content

Use cases

Mateu is especially powerful for a specific type of applications.

If you’re building any of the following, Mateu can dramatically reduce complexity.


Build admin panels, dashboards, and back-office tools without a frontend team.

  • forms
  • tables
  • filters
  • actions
  • workflows
  • no frontend duplication
  • fast iteration
  • simple architecture

Mateu shines in data-heavy applications.

@UI("")
public class Users {
List<User> users = userService.findAll();
@Button
Runnable create = () -> {};
}

Mateu generates:

  • tables
  • forms
  • actions

Large business applications often suffer from:

  • duplicated models
  • frontend/backend sync issues
  • complex architectures

Mateu simplifies this by:

  • defining UI in one place
  • removing API glue
  • reducing moving parts

Mateu is stateless and works naturally with distributed systems.

You can:

  • expose UIs from multiple services
  • compose them in a single frontend
  • scale independently

Mateu UIs can be embedded anywhere as web components.

Use cases:

  • integrate into existing apps
  • expose specific forms
  • build modular UIs

Mateu is not ideal for:

  • highly custom visual experiences
  • marketing websites
  • animation-heavy UIs

Mateu works best when:

  • UI is driven by data and actions
  • speed matters more than pixel-perfect design
  • you want fewer moving parts

👉 Try the live demo: https://vaadin.mateu.io/fluent/use-cases/rra