-
Notifications
You must be signed in to change notification settings - Fork 0
joviedev/airbnb
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
======================================== Airbnb Web Database Application - README ======================================== Author: Jovie Jing Sin Student ID: s3710021 ---------------------------------------- Project Description ---------------------------------------- This is a web-based Airbnb-style property listing and booking application built using: - Node.js - Express - MongoDB Atlas (Cloud database) - Bootstrap (for front-end styling) ---------------------------------------- How to Run ---------------------------------------- 1. Prerequisites: - Node.js (version 18+ recommended) - npm (Node Package Manager) - Internet connection (required for MongoDB Atlas connection) 2. Clone or extract the project files. 3. Open a terminal and navigate to the project root directory. 4. Install all dependencies: npm install This will install: - express - mongodb - body-parser - open 5. Start the server: (2 ways) npm start node server.js 6. The app will automatically open in your default browser at: http://localhost:3000/ If it does not open automatically, open the above link in your browser. ---------------------------------------- Configuration ---------------------------------------- - The default port is **3000**. If this port is unavailable, update the `PORT` variable in `server.js`. - The server will connect to MongoDB Atlas using the connection string specified in `server.js`. Please update the credentials if required. ---------------------------------------- Features ---------------------------------------- - Random property listings are shown on the homepage by default. - Users can search/filter by location, property type, and bedrooms. - Clicking a property name opens the booking page for that listing. - Bookings are stored in the `bookings` collection in MongoDB Atlas. - Overlapping bookings for the same property and date range are not allowed (users will see an error if attempting). - Error handling is implemented for failed bookings and database errors. - Confirmation page after a successful booking. ---------------------------------------- Testing Instructions ---------------------------------------- - Submit a booking with the same property and overlapping date range to verify duplicate prevention. - Check MongoDB Atlas (`sample_airbnb` > `bookings` collection) to see all bookings. - If needed, change database credentials in `server.js`. ---------------------------------------- Contact ---------------------------------------- For any issues, please contact: s3710021@student.rmit.edu.au
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published