Click here to download and view the application demo
Tech stack: NextJS, React, Tailwind, Prisma, MongoDB, NextAuth.
Key Features:
- Booking / Reservation system
- Guest reservation cancellation
- Owner reservation cancellation
- Creation and deletion of properties
- Pricing calculation
- Client form validation and handling using react-hook-form
- Advanced search algorithm: Filters properties by category, date range, map location, guests, rooms, and bathrooms, considering existing reservations.
- Favorites system
- Shareable URL filters: Generates shareable URLs with filter criteria.
- Credential authentication
- Google authentication
- Github authentication
- Image upload using Cloudinary CDN
- Server error handling using react-toast
- Calendars with react-date-range
- Page loading state
- Page empty state
- Tailwind design, animations and effects
- Full responsiveness
Node version 14.x
git clone https://github.com/arjunan-k/Airbnb.git
npm i
DATABASE_URL="";
NEXTAUTH_SECRET="NEXTAUTH_SECRET";
GITHUB_ID=0abc0
GITHUB_SECRET=0abc0
GOOGLE_CLIENT_ID=0abc0
GOOGLE_CLIENT_SECRET=0abc0
NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME="";
npx prisma db push
npm run dev
Running commands with npm npm run [command]
command | description |
---|---|
dev |
Starts a development instance of the app |
build |
Build app which is optimized for production |