AirBnB Clone

ReactNext.jsTypescriptTailwind CSSNextAuthPrismaMongoDBZustandVercel

An AirBnB clone that allows users to rent homes.

Overview

For this project, I followed Code with Antonio’s tutorial on how to build a AirBnB application. This tutorial was very useful to me because it helped me reinforce my learnings for the new Next13 app router structure. This project helped me become better with typescript and making sure that I resolve type errors.

Features

Features:

Takeaways

I feel like I learned alot more about React server componenets and how it works with the new Next13 app router. I had experience using MongoDB, Prisma, and NextAuth from previous projects, but I was able to learn how to use Zustand, which is a state management library that is similar to Redux. I learned how to use zustand to create simple global states for modals in our application. This abstraction made it very easy to create custom hooks for opening and closing a modal. I also learned how to use react-hook-form to handle form validation and form submission. I also learned how to use react-toast to display error messages to the user. I also learned how to use react-date-range to create a calendar for the user to select a date range. I also learned how to use Cloudinary CDN to upload images to the cloud. I had experience using react-map-gl from a previous project, so using the Leaftlet API was similar where I had no issue using. I also learned how to use react-select to create a dropdown menu for the user to select a category. This project helped solidfy my confidence to make fullstack applications using Next.js as well as working with Typescript to provide a better developer experience.

Check out the website Rent Homes and the github