System Documentation¶
This section contains detailed documentation about the system architecture, components, and technical details of the Gustaffo Reservations Application.
Available Documentation¶
- Architecture Overview - High-level system architecture, including component diagrams and system interactions
- Database Schema - Detailed information about the database structure, tables, and relationships
- Security - Security architecture, authentication, authorization, and data protection
- Deployment - Deployment process, environments, and configuration
System Overview¶
The Gustaffo Reservations Application is built on a microservices architecture, with separate services handling different aspects of the reservation process. The system integrates with various external systems, including payment processors, property management systems, and third-party booking channels.
Core Technologies¶
- Backend: Java 17 with Spring Boot and Jakarta EE
- Frontend: React with Material UI
- Database: PostgreSQL for persistent data storage
- Messaging: RabbitMQ for asynchronous communication between services
- Containerization: Docker and Kubernetes for deployment
- CI/CD: Jenkins and GitLab CI for continuous integration and deployment
Key Components¶
- Reservation Service: Handles the creation and management of reservations
- Payment Service: Processes payments and interacts with payment gateways
- Integration Service: Connects with external systems like PMS and OTAs
- Notification Service: Manages email and SMS notifications to guests and hotels
- API Gateway: Provides a unified entry point for client applications