Skip to content

frazie/petBNB

Repository files navigation

![PetBNB]

Introduction

(visit the LIVE site

PetBNB is a Simple Social Media application built using JavaScript, Node.js, Express, Mongoose, and Bootstrap. It utilizes the MVC Architecture, MongoDB and MongoAtlas NoSQL database - with Cloudinary image hosting, and implements "local authorization" for user sign-up and login.

PetBNB was built on the idea of providing the users with the ability of listing their location as host to pets where owners may wish to leave their pets with an individual for a selected period. Similarly, the users can also look up these locations and get into contact with their potential host from a list of hosts by creating a booking for their pet.

Objectives

This application was built to strengthen my understanding of the various libraries and elements used within while also seeking to solve and internal problem within the the pet owners and lovers community. Feel free to give it a ::star:: and fork it to make it your own!

Additionally, I created the project for a period of over 100 hours as a fullstack application with the listed technologies.


Who can benefit from working on this repo?

It's for beginners & intermediates with little more experience, to help understand the various aspects of building a node app with some complex features.


Optimizations

Some possiblie features/optimizations include:

  • Improving the UI across the pages with tailwindCSS
  • Comments with scrolling capability
  • Limiting the aspect ratio and/or cropping images to a standard size
  • Ability to edit post
  • Ability to edit profile

Packages/Dependencies used

connect-mongo, dotenv, ejs, express, express-session, mongodb, mongoose, morgan, nodemon, passport, passport-local, cloudinary, multer, serve-favicon, validator


Install all the dependencies or node packages used for development via Terminal

npm install


Things to add

  • Create a .env file and add the following as key: value
    • PORT: 2121 (can be any port example: 3000)
    • DB_STRING: your database URI
    • CLOUD_NAME = your cloudinary cloud name
    • API_KEY = your cloudinary api key
    • API_SECRET = your cloudinary api secret

Have fun testing and improving it! 😎