Skip to content

Node.js fullstack app with cluster map, image upload, full authentication and authorization and other security features

Notifications You must be signed in to change notification settings

mazenadel19/Express-YelpCamp

Repository files navigation

YelpCamp

full-stack app with cluster map, image upload, full authentication and authorization, and other security features

📺 Watch Live here

🚀 Getting Started with YelpCamp

  1. Install node (in case you don't have it)
  2. open the terminal and run git clone https://github.com/mazenadel19/YelpCamp.git
  3. npm install -g nodemon (in case you don't have it)
  4. cd YelpCamp
  5. npm i
NB: to use yelpcamp in your local machine you will need a .env file that looks like this
MAPBOX_TOKEN=*your_map_token_here*
SECRET=*some_gibberish_here*
CLOUDINARY_CLOUD_NAME=*cloud_name_here*
CLOUDINARY_KEY=*API_key_here*
CLOUDINARY_SECRET=*API_secret_here*

you can get a Mapbox token from here and your Cloudinary cloud name, API key and API secret from here

  1. nodemon
  2. open localhost:3000 in your browser

some extra steps if you wish to have some initial data:

  1. go to register tab and register as a user
  2. take the _id printed in the terminal and paste it instead of the author id in the index file inside the seeds directory
  3. stop the terminal
  4. cd seeds
  5. node index.js
  6. cd ..
  7. nodemon

🧰 Tools I've used

  • cloudinary
  • colors
  • connect-flash
  • connect-mongo
  • dotenv
  • ejs
  • ejs-mate
  • express
  • express Mongo sanitize
  • express-session
  • helmet
  • joi
  • mapbox
  • morgan
  • method-override
  • mongoose
  • multer
  • multer-storage-cloudinary
  • passport
  • passport-local
  • passport-local-mongoose
  • starability

About

Node.js fullstack app with cluster map, image upload, full authentication and authorization and other security features

Topics

Resources

Stars

Watchers

Forks