This project is lets you sign up, login and register your properties. You can view other stays and reserve them as well.
- TypeScript
- Next.js 13
- React.js
- TailwindCSS
- Prisma
- MongoDB
- Zustand
You can checkout the deployed version of the app on this link
- The app uses a Tailwindcss for styling. It is fully responsive, to look good both on the desktop and on mobile.
- It uses Next.js 13 experimental
app
directory. The data fetching is done usingReact Server Components
. So it is blazing fast. - You can sign up and login with credentials. Also, authentication is also possible using Gooogle or Github accounts. The authentication is implemented using
next-auth
package. - The app has a middleware to guard protected routes.
- The app interacts with a MongoDB database using
Prisma
. - You can register your own properties for rent.
- You can view properties available for rent.
- You can filter the available stays.
- You can resrve and favorite stays.
- Only the person who made the reservation, and the property owner are allowed to cancel a reservation.
- A property owner can delete their property.
To run the project in your local enviroment, first clone this repo. Then run the following commands:
npm install
npm run dev
Don't forget to add the necessary environment variables in a .env
file in the root of the project.