✧
Quick Start ✧
Report Bug ✧
Author✧
Airbnb is an online marketplace that connects people who want to rent out their homes with people who are looking for accommodations in specific locales. Airbnb offers people an easy, relatively stress-free way to earn some income from their property.
- Fully Responsive
- Credential Authentication
- Google Authentication
- Github Authentication
- Property Listing
- Booking / Reservation System
- Guest Reservation Cancellation
- Owner Reservation Cancellation
- Creation and Deletion of Properties
- Search by Category, Date Range, Map Location, Number of Guests, Rooms and Bathrooms
- Add Favorites
- Shareable URL filters
$ git clone https://github.com/sumit-sharma-02/airbnb.git
$ cd airbnb
$ npm install
Add your config variables values in the .env file which will be in the root directory.
DATABASE_URL = Go to mongodb atlas website -> login -> create database -> free -> add you username, pass -> finish -> connect -> connect with VS Code -> Copy the link paste here in the .env file -> replace <password> with the password you added while creating
NEXTAUTH_SECRET = 'NEXTAUTH_SECRET'
GOOGLE_CLIENT_ID = go to "https://console.cloud.google.com/getting-started" -> create a new project -> once project is created search api in searchbar -> go to Enabled APIs and services -> OAuth consent screen -> external -> create -> fill mandatory fields with you name and emailid -> continue X3. Now go to credentials on the left -> create credentials -> create OAuth Client ID -> application type - web application -> Add "http://localhost:3000/api/auth/callback/google" in the Authorized redirect URIs -> create -> Copy ClientID and paste it here in the .env file.
GOOGLE_CLIENT_SECRET = Copy Client Secret and paste it here in the .env file.
GITHUB_ID = Go to your github -> settings -> developer settings -> OAuth Apps -> Add new -> Add "http://localhost:3000" in homepage and authorization callback url -> generate -> copy paste client id here in .env file.
GITHUB_SECRET = Continuing above step below client id click on generate client secret and paste in here in the .env file.
NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME = Go to Cloudinary website -> Login -> Dashboard -> copy the cloud name and paste it here in the .env file.
npx prisma db push
npm run dev
If you want to contact me, you can reach me through below handles.
Give it a ⭐️ if you like it.