Domain-driven backend systems

Domain-driven backend architecture with explicit lifecycles and invariants

Spring Boot systems with order workflows, auth, and audit logging.

React Spring Boot MySQL

Run the Project

Start by exploring the source code on GitHub.

  • ✅ JWT-based authentication with role-aware access control
  • ✅ Order lifecycle modeled as a domain state machine
  • ✅ Cart aggregate validating products and quantities before checkout
  • ✅ Product invariants enforced at the API boundary
  • ✅ Transactional audit logging using Spring AOP
  • ✅ React + Spring Boot + MySQL stack with Dockerized local setup

GitHub Repository

View the complete source code, project structure, and documentation.

Docker Setup

Spin up the full stack locally using Docker Compose.

API Documentation (Swagger)

Interactively explore and test the backend REST APIs.

Order Runtime Architecture

From React UI to Domain State Machine to Database

Order Architecture Diagram

Technical Deep Dives

Design and tradeoffs behind core backend systems.

Payment Lifecycle

Transaction safe payment lifecycle with signature verification.

View more →
Audit Logging

Spring AOP–based audit system capturing business events transactionally.

View more →
Order State Machine

Backend-enforced order lifecycle with explicit transitions and terminal states.

View more →
Cart Aggregate

Domain-driven cart aggregate validating products and quantities before checkout.

View more →