This project is a backend JSON API for a hotel reservation system. It's built using Go (Golang) and utilizes MongoDB for data persistence. The API allows for room booking at a hotel, with features to support both user and administrative functionalities.
- Room Booking: Users can browse available rooms and make reservations.
- Account Management: Users can create accounts, log in, and manage their bookings.
- Booking Management: Admins can view and manage all room bookings.
- Room Management: Admins have the capabilities to add, remove, or modify room details.
- User Management: Admins can manage user accounts and access rights.
- Authentication: The API supports secure user authentication.
- Authorization: Different authorization levels are implemented, ensuring users have access only to appropriate functionalities.
- Database Seeding: Scripts are provided to seed the database with initial data.
- Database Migrations: The system supports database migrations for smooth transitions and upgrades.
- **Programming Language **: Go (Fiber)
- Database: MongoDB
- Authentication: JWT / OAuth (TBD)
- Clone the repository:
git clone https://github.com/Ndeta100/CamHotelConnect.git
HTTP_LISTEN_ADDRESS=:3000
JWT_SECRET=somthing_supersecret_No_bodyknows
MONGO_DB_URL=mongodb://localhost:27017
MONGO_DB_NAME=hotel-reservation
MONGO_DB_URL_TEST=mongodb://localhost:27017
CLOUDINARY_API_KEY=
CLOUDINARY_API_SECRET=
CLOUDINARY_CLOUD_NAME=
CLOUDINARY_UPLOAD_FOLDER=