Architecture Design
We've learned a lot about the application we are to build, let's use this knowledge to design our application's architecture.
Design the Architecture

Based on the functionality we've captured, we'll need a few components:
- Spring Boot app -- The backend of our application, exposing a REST API
- React App -- The frontend of our application, which calls the REST API
- Keycloak -- Our auth server, handling authentication and authorization
Here's the mermaid diagram:
flowchart LR
A[Event Ticket App</br>Frontend</br><< React >>]
B[Event Ticket App</br>Backend</br><< Spring Boot >>]
C[Database</br><< PostgreSQL >>]
A --- B
B --- CSummary
- Our architecture includes a Spring Boot backend, React frontend, PostgreSQL database, and a Keycloak server