A full-stack web application inspired by Airbnb, allowing users to discover, book, and manage property rentals worldwide.
- User Authentication: Secure user registration and login (JWT, OAuth).
- Property Listings: Users can browse, view, and search for properties with detailed information.
- Search Functionality: Dynamic search bar with filters for location, date, and number of guests.
- Booking System: A complete booking workflow, allowing users to select dates and confirm reservations.
- Interactive Map: Integration with Mapbox or Google Maps to show property locations.
- Responsive Design: A mobile-first design that works seamlessly on all devices.
- User Profiles: A dedicated page for users to manage their listings and bookings.
- Frontend: Javascript, EJS
- Backend: Node.js, Express.js
- Database: MongoDB, Mongoose
- Authentication: JSON Web Tokens (JWT)
- Deployment: AWS Azure, Render
Instructions on how to get a local copy up and running.
- Node.js (v18.x or higher)
- npm or yarn
- A
.envfile with your database connection string and other environment variables.
- Clone the repo
git clone [https://github.com/EXcoder12/AirBnb](https://github.com/EXcoder12/AirBnb)
- Install NPM packages for the server
cd server npm install - Install NPM packages for the client
cd ../client npm install - Start the development servers
# In the server directory npm run dev # In the client directory npm start