DogBnB

August 16, 2022

My brother told me that if I can recreate the AirBnB website, I should be ready for any dev jobs. Well... here it is AirBnB except it's dogs since that was more fun so DogBnB. The site is a work in progress since it was designed for desktop. I still need to restyle the CSS for mobile and add a few more functions.

The project was built using NextJS, MongoDB, and TailwindCSS. I used NextJS after looking through several frameworks and picked it because it was super simple to get APIs up and running. I used MongoDB since I'm familiar with NoSQL databases from my previous job (we used Firebase). Although my brother recommended using a SQL database so I might change it some time down the line just to learn how to set one up. And TailwindCSS was used for styling since it's also what I used for this site.

The most difficult part of this entire thing was the calendar. It would output the time as local time so that caused scheduling conflicts and wouldn't block out dates correctly. I wracked my brain over this since I wasn't familiar with the javascript Date functions, but when I learned about it, everything fell into place. I just got to convert the time correctly to UTC and all the problems were gone.

One other bonus from this was learning about DNS records. I've always got a domain and used it as cooldomainname.com, but never had to do anything like super.cooldomainname.com. I saw something about this in the Vercel documentation and got it running as dogbnb.blamstack.dev.

8/25 Update: Review function has been added for past reservations.

8/31 Update: Styling added to support mobile view.