Skip to content

Mateu

Build backoffice UIs without building a frontend. Backend-driven UI for distributed systems.

Most business applications end up with two applications:

backend → API → frontend → duplicated model → duplicated validation

That usually means duplicated business concepts, duplicated validation, more glue code, more moving parts, and harder maintenance.

backend → Mateu UI → browser

The backend owns the UI.

Mateu lets your backend expose real business UIs directly, without turning every internal tool into a separate frontend project.

@UI("/orders")
public class Orders extends AutoCrudOrchestrator<Order> {}

Admin panels

Fast CRUD-heavy backoffice screens directly from your Java model.

Distributed backoffices

Let each microservice define its own UI and compose everything in one shell.

Embedded UI

Use Mateu inside React, Vue, Angular or plain HTML through a web component.

Real-world architectures

Works naturally with microservices, DDD, CQRS, and hexagonal architecture.

Mateu works with Spring Boot MVC, Spring WebFlux, Micronaut, Quarkus, and any HTTP-based Java backend. You keep your architecture. Mateu becomes one more inbound adapter.

  1. Quickstart
  2. Admin panel
  3. Customizing CRUD and listings
  4. Golden example: Orders, Customers and Order lines
  5. Real-world architecture