This project is a comprehensive microservices-based backend for hotel management. It is designed to provide real-world experience in developing, deploying, and managing a microservices architecture. The backend consists of multiple services, each responsible for a specific aspect of hotel management, ensuring a modular and scalable system.
The backend is composed of the following microservices:
- Manages communication and notifications from the admin to other services and users.
- Ensures centralized control and monitoring of admin messages.
- Handles room booking operations including reservation creation, updates, and cancellations.
- Provides availability checks and booking confirmations.
- Manages hotel facilities such as pools, gyms, and conference rooms.
- Allows booking and scheduling of facilities by hotel guests.
- Collects and manages feedback from hotel guests.
- Provides tools for analyzing feedback to improve services.
- Manages information about different hotels including their locations, amenities, and services.
- Facilitates the addition, update, and removal of hotel data.
- Manages room details such as types, pricing, and availability.
- Integrates with the Room Bookings service to ensure accurate availability status.
- Handles user registration, authentication, and profile management.
- Provides role-based access control to different services.
- Microservices Architecture: Each service is independent and can be developed, deployed, and scaled individually.
- Scalability: Easily handle increased load by scaling individual services.
- Modularity: Services are loosely coupled, allowing for easy maintenance and updates.
- Real-World Experience: Provides hands-on experience with microservices, similar to real-world enterprise applications.