🌐 Live Website
👉 https://hotel-booking-platform-48b83.web.app/
This project is built to provide a seamless hotel booking experience with modern UI/UX design, authentication, real-time booking system, and reviews. It showcases a production-grade hotel booking portal where users can interactively explore rooms, filter by price, and share feedback.
🔑 Key Features
Dynamic Banner with CTA button to Rooms page
Map displaying hotel location via react-leaflet
Featured Rooms (Top Rated)
Customer Review Carousel (Sorted by latest)
Special Offers Modal Popup on initial load
Extra two sections (e.g., Amenities and Services)
Email & Password login/register with Firebase Auth
Google social login
Protected Routes with Firebase Access Token (JWT)
Client-side secure token storage using localStorage
Lists all rooms from database
Filter rooms by price range (Server-side filtering)
Clickable cards redirecting to Room Details page
Complete room info with image, amenities, pricing, etc.
List of all reviews with timestamp
Booking modal with date picker & availability check
Only authenticated users can book/review
Shows only current user’s bookings
Cancel Booking with date logic (1 day prior)
Update Booking Date
Submit Review (Only if booked)
Authenticated users can leave reviews for booked rooms
Reviews include name (read-only), comment, rating (1–5), and timestamp
Displayed in Room Details and Home carousel
Firebase config secured via .env.local
All protected routes secured using JWT token verification
SweetAlert/Toast notifications
404 Custom Page with animation and back-to-home button
Framer Motion animations
Implement dynamic title for routes
Frontend
React.js (Vite)
React Router DOM
Tailwind CSS + DaisyUI
Firebase Auth
React Hot Toast / SweetAlert2
React Icons
React Date Picker
React Helmet Async
React Leaflet (Map)
React Slick (Slider)
Framer Motion
Deployment
Client: Vercel
- Server: (https://github.com/Charlie-033/Hotelux-S)
To run this project on your local machine, follow these steps:
git clone https://github.com/Charlie-033/HoteLux.git
cd your-repo-name
npm install
npm run dev