Welcome to GrandMark β a modern, full-stack hotel reservator web application where users can seamlessly host their own properties or rent unique places for a memorable stay. Whether you're a traveler looking for a peaceful escape or a host wanting to share your special space with the world, GrandMark is built to make the experience smooth, secure, and beautiful.
-
β User Authentication
- Secure login & registration using JWT
- Context-based user management (React Context API)
-
π‘ Host a Place
- Add your property with detailed descriptions, images, pricing, perks, and availability
- Edit or delete your listings at any time
-
π Explore & Book Stays
- Browse all listed properties
- View full details including amenities, photos, price, and location
- Book a place by selecting dates and number of guests
-
πΌοΈ Photo Gallery & Viewer
- Upload multiple images while listing a property
- Zoomable, modal-based image viewer on the place detail and booking pages
-
π My Bookings Page
- View all your current and past reservations
- Booking summary includes price, dates, contact info, and property details
-
βοΈ Responsive Design
- Mobile-first, responsive design using Tailwind CSS for a beautiful look on any device
| Layer | Tech Stack |
|---|---|
| Frontend | React, Tailwind CSS, React Router |
| Backend | Node.js, Express.js, JWT |
| Database | MongoDB (Mongoose ODM) |
| API Calls | Axios |
| Uploads | Multer for image handling |
| Hosting | Vercel (frontend), Render (backend) |
- π Frontend: https://your-frontend.vercel.app
- π Backend: https://grandmark-hotelreservator-api.onrender.com
git clone https://github.com/your-username/grandmark-hotel-reservator.git
cd grandmark-hotel-reservatorcd api
npm install
# Create a .env file
touch .env.env file example:
MONGO_URL=mongodb+srv://<your-db-url>
JWT_SECRET=your_jwt_secretRun the backend:
npm run devcd ../client npm install npm run dev
grandmark-hotel-reservator/ βββ client/ # Frontend React App β βββ pages/ # All pages (Login, Register, Booking, etc.) β βββ components/ # Reusable UI components β βββ UserContext.jsx # Global auth/user context β βββ api/ # Backend Express App β βββ models/ # MongoDB schemas β βββ routes/ # API endpoints β βββ middleware/ # Auth middleware, file upload config β βββ uploads/ # Uploaded images stored here β βββ README.md
-
Use Vercel for the frontend and Render for backend.
-
Set your frontend
.envwith: env VITE_API_BASE_URL=https://grandmark-hotelreservator-api.onrender.com -
Ensure CORS and credentials are properly configured in your Express app.
Contributions, issues and feature requests are welcome!
Feel free to open a pull request or fork the repo to enhance the app.
This project is licensed under the MIT License.
Made with β€οΈ by Sundar
Connect with me:
π GitHub
π§ Email