Mateu
Build business UIs in Java
Mateu is a model-driven UI framework for business applications.
Define your UI once in Java.
Mateu generates forms, CRUD, navigation and application shells from that model.
Why Mateu
Traditional business apps often mean:
- backend logic
- frontend app
- API layer
- duplicated models
- duplicated validation
- duplicated routing
- more glue code than expected
Mateu takes a different approach:
- one application model
- one source of truth
- less duplication
- fewer moving parts
For the full positioning, see Why Mateu → and Mateu vs traditional stack →.
When to use Mateu
Mateu is designed for business applications.
- best for → admin panels, internal tools, distributed backoffices
- not ideal for → marketing sites or highly custom UIs
The core idea
In Mateu, you define:
- state with fields
- actions with methods or callables
- rendering and behavior with annotations
- routing and navigation in the same model
Mateu turns that into a working UI.
To understand the mental shift, see:
Three strong use cases
1. Admin panels
Build CRUD-heavy backoffice screens directly from your Java model.
This is the fastest way to understand the value of Mateu.

2. Distributed backoffices
Let each microservice define its own UI and compose everything in one shell.
This is one of Mateu’s most distinctive strengths.

3. Embedded UI
Use Mateu inside React, Vue, Angular or even plain HTML through a web component.
This makes adoption gradual and low-risk.

Architecture
Mateu is intentionally simple at a high level:
- backend code defines the UI
- Mateu exposes that through a small API
- a renderer turns it into a real browser UI
That separation makes Mateu a strong fit for:
- microservices
- stateless systems
- distributed UIs
- pluggable renderers
Read more here:
Recommended path
If you’re new to Mateu, follow this order:
Java manual
The Java manual is already organized as a guided path:
One-sentence summary
Mateu turns backend objects into real business UIs through a simple model, a small API and a renderer.
Community
Mateu is evolving. Join the community: