This project is a Room Slot Booking System built using Django, allowing users to book rooms for specific time slots. The system supports two types of users:
- Room Manager: Manages rooms, time slots, and booking policies.
- Customer: Books available rooms and manages their own reservations.
- User sign-up & sign-in functionality.
- User roles: Room Manager & Customer.
- Only authenticated users can book or manage rooms.
- Room Managers can define, add, or delete rooms.
- Rooms have recurring time slots for availability.
- Room Managers set the booking limit (x days in advance).
- Customers can book a room for a specific time slot.
- Once booked, a room cannot be reserved by another user for that slot.
- Customers can view and delete their own bookings.
- Room Managers can view all bookings, occupancy details, and customer details.
- Customers can see past and upcoming bookings along with the respective Room Manager.
- Unit tests ensure proper functionality of authentication, room management, and booking.
- User management (signup, login, logout).
- Room & Time Slot management.
- Booking management (create, view, delete bookings).
- Django (Backend framework)
- Python (Core language)
- HTML/CSS/JavaScript (Frontend UI)
- Git (Version control)
git clone https://github.com/AB-at-UCR/room-slot-booking.git
cd room-slot-booking
python3 manage.py runserver # runs the django server
Access the app at: http://127.0.0.1:8000/