Airline management system
Flight booking end to end, with a state machine that refuses to let a flight board twice.
What it does
- Flight lifecycle modelled as Scheduled → Boarding → Departed → Arrived, enforced in the domain layer, not the UI.
- REST API on Spring Boot and Spring Data JPA over MySQL.
- Frontend in plain JavaScript — no framework, no build step.