Skip to content

maximoortelli/Full-Stack-Rental

Repository files navigation

πŸ˜πŸ™ Full Stack Airbnb πŸ™πŸ˜

πŸ“— Table of Contents

πŸ˜πŸ™ Full Stack Airbnb

In this new project I have made a site to reserve or rent houses or apartments identical to Airbnb, taking advantage of key technologies such as JavaScript, TypeScript, React, Node Next.js, NextAuth, Tailwind.css, MongoDB and Express.

πŸ’»βœ… Deployment

Click here to see the deployment

πŸ›  Built With

Tech Stack

Server side

Database

Getting Started

First, run the development server:

npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev

Open http://localhost:3000 with your browser to see the result.

You can start editing the page by modifying app/page.js. The page auto-updates as you edit the file.

This project uses next/font to automatically optimize and load Inter, a custom Google Font.

Learn More

To learn more about Next.js, take a look at the following resources:

You can check out the Next.js GitHub repository - your feedback and contributions are welcome!

Check out our Next.js deployment documentation for more details.

Kanban board

Complete State of Kanban board

πŸ‘₯ Authors

πŸ‘€ Maximo Ortelli

πŸ”­ Future Features

  • Tailwind design
  • Tailwind animations and effects
  • Full responsiveness
  • Credential authentication
  • Google authentication
  • Github authentication
  • Image upload using Cloudinary CDN
  • Client form validation and handling using react-hook-form
  • Server error handling using react-toast
  • Calendars with react-date-range
  • Page loading state
  • Page empty state
  • Booking / Reservation system
  • Guest reservation cancellation
  • Owner reservation cancellation
  • Creation and deletion of properties
  • Pricing calculation
  • Advanced search algorithm by category, date range, map location, number of guests, rooms and bathrooms
    • For example we will filter out properties that have a reservation in your desired date range to travel
  • Favorites system
  • Shareable URL filters
    • Lets say you select a category, location and date range, you will be able to share URL with a logged out friend in another browser and they will see the same results
  • How to write POST and DELETE routes in route handlers (app/api)
  • How to fetch data in server react components by directly accessing database (WITHOUT API! like Magic!)
  • How to handle files like error.tsx and loading.tsx which are new Next 13 templating files to unify loading and error handling
  • How to handle relations between Server and Child components!

(back to top)

🀝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the issues page.

(back to top)

⭐️ Show your support

If you like this project please give it a star 😁🌟✨

(back to top)

πŸ™ Acknowledgments

We thank to Airbnb for the design.

(back to top)

πŸ“ License

This project is MIT licensed.

(back to top)

About

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages