Apache Causeway is a framework for building domain-driven applications on top of Spring Boot. Instead of writing controllers and templates, you define domain objects with properties, actions, and business rules — and Causeway generates both a Wicket web UI and a RESTful Objects API from the same metamodel. This walkthrough builds a small asset management application using Causeway 3.6.0, Java 21, and Maven. It covers project setup with EclipseLink JPA and H2, modeling an Asset entity with lifecycle states (AVAILABLE, ASSIGNED, RETIRED), exposing actions like assignTo() and retire(), enforcing business rules via supporting methods (disableX(), validateNX()), and creating a domain service backed by Spring Data JPA. The generated UI enforces validation without any custom controllers or templates, and the REST API is automatically available via the RESTful Objects viewer.