- Responsive design with Tailwind CSS
- Show a list of cards with properties like Airbnb
- Listings with images, title, description, location, price per night
- Has a navbar with logo, search bar, sign in button
- Show avatar and name of user when signed in
- Has categories filters like Airbnb
- Has filters for number of guests, rooms, location, dates
- Has a map with markers for each property
- Has a calendar to select dates
- Has a form to add a new property
- Has a form to sign in
- Has a form to sign up
- Has a heart button to add a property to favorites
- Image upload with Cloudinary
- Page to show trips of a user
- Page to show reservations of a property
- Page to show properties of a user
- Page to show favorites listings of a user
- Authentication with NextAuth.js
- Authentication with Google, Github and Email
- Database with MongoDB and Prisma
- Use App router from Next.js 13
- Deployed on Vercel
- Next.js 13
- Tailwind CSS
- TypeScript
- Prisma
- MongoDB
- NextAuth.js
- Axios
- Date-fns
- Bcrypt
- Cloudinary
- Query String
- React Date Range
- React Hook Form
- React Icons
- React Hot Toast
- Leaflet
- React Select
- React spinners
- World countries data
- Zustand
- Vercel
- MongoDB Atlas
This is a Next.js project bootstrapped with create-next-app
.
First, run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
Open http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying app/page.tsx
. The page auto-updates as you edit the file.
http://localhost:3000/api/hello is an endpoint that uses Route Handlers. This endpoint can be edited in app/api/hello/route.ts
.
This project uses next/font
to automatically optimize and load Inter, a custom Google Font.
To learn more about Next.js, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial.
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.
You can check out the demo: