Campry

Description:
​
-
Campry is a Full-stack Web App providing a platform for listing, reviewing and visualizing camping locations
-
Implemented server with Node.js and Express.js, designed full CRUD RESTful APIs and routed with Express Router
-
Developed user and review table with MongoDB; Integrated session store with connect-mongo and express-session and cookie-parser; implemented ODM with Mongoose; deployed on cloud with MongoDB Atlas; Integrated cloud image stroage with Cloudinary
-
Implemented front-end with EJS and ejs-mate; styled with Bootstrap v5 and Starability CSS
-
Implemented authentication with Passport and node.bcrypt.js
-
Deployed error handling with Express Middleware, Joi.dev on server-side and Bootstrap Validation on client-side
-
Deployed on Heroku; configured env variables with dotenv
-
Adopted server rebooting with nodemon, http logging with morgan and API testing with Postman for development
-
Optimized image size with Cloudinary image transformation API; applied MVC design pattern; guarded against common security issues
-
Other library used: method-override for HTTP requests; connect-flash for front-end notification; multer for image file uploading; bs-custom-file-input for file input display