https://github.com/davidkhahn/online-shop
Node.js, MongoDB, Express.js, RESTful API, Nodemon, Body-Parser, Mongoose, Morgan, Bcrypt, Multer, JSONwebtoken
https://github.com/davidkhahn/online-shop
bcrypt express-js jsonwebtoken mongo mongoosejs multer nodejs postman restful-api
Last synced: 4 months ago
JSON representation
Node.js, MongoDB, Express.js, RESTful API, Nodemon, Body-Parser, Mongoose, Morgan, Bcrypt, Multer, JSONwebtoken
- Host: GitHub
- URL: https://github.com/davidkhahn/online-shop
- Owner: DavidKHahn
- Created: 2018-06-19T07:13:18.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-06-28T21:10:00.000Z (over 7 years ago)
- Last Synced: 2025-02-01T06:11:12.293Z (about 1 year ago)
- Topics: bcrypt, express-js, jsonwebtoken, mongo, mongoosejs, multer, nodejs, postman, restful-api
- Language: JavaScript
- Homepage: http://davidkhahn.herokuapp.com/images/onlineshopvid.mp4
- Size: 7.68 MB
- Stars: 14
- Watchers: 2
- Forks: 7
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Online-Shop (backend framework project)
:coffee:
**Node.js, Mongo DB(Atlas), Mongoose, RESTful API, Postman, Express.js, Nodemon, Body-Parser, Morgan, Multer, Bcrypt, JSON web token**
:coffee:
Rebuilding-backend is a project depicting the system framework for product data-tracking and also ability to store user accounts into Mongo DB while using Node.js to set-up the framework for routes. A RESTful API was created for GET, POST, DELETE, PATCH requests containing 'id, name, price, quantity, description, images and link' for each product/order stored in the DB. APIs were tested using Postman, NPM Multer was used to allow images to be uploaded into the DB as well as getting back image and NPM Bcrypt was used to encrypt user passwords (hash and salt) into the DB. JWT (jsonwebtoken) was used so the client can access protected data without the server having to store any information connected to clients (stateless authentication implemented by json web token). Controllers are added to clean up the routes files.
The following definitions in quotes below are provided from [npm.js](https://www.npmjs.com/) :
:coffee:
**-Nodemon** - "nodemon will watch the files in the directory in which nodemon was started, and if any files change, nodemon will automatically restart your node application."
**-Body-Parser** - "Parse incoming request bodies in a middleware before your handlers, available under the req.body property."
**-Morgan** - "HTTP request logger middleware for node.js."
**-Express.js** - Node web framework used for APIs and server connections.
**-Mongoose.js** - "Mongoose provides a straight-forward, schema-based solution to model your application data. It includes built-in type casting, validation, query building, business logic hooks and more, out of the box (courtesy of [mongoose.js](www.mongoose.js.com))."
**-Multer** - Used to store images into Mongo DB and also to get images
**-Bcrypt** - NPM package used to encrypt passwords in DB using hash and salt variations.
**-JSON web token** - NPM package used to send client encoded data in order to identify login with the server.