Initialize the project with Node:
npm init
Install backend dependencies, packages (DB, API, Encrypt, etc.):
npm install --save express body-parser
Express Pacakges, Express framework, body-parser for JSON:
npm install --save-dev nodemon
nodemon, a tool that helps develop node.js based applications by automatically restarting the node application when file changes in the directory are detected.
npm install graphql --save
GraphQL is a query language for APIs and a runtime for fulfilling those queries with your existing data. GraphQL provides a complete and understandable description of the data in your API, gives clients the power to ask for exactly what they need and nothing more, makes it easier to evolve APIs over time, and enables powerful developer tools.
npm install --save mongoose
mongoose, an elegant mongodb object modeling for node.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.
npm install --save bcryptjs
bcrypt is a password hashing function designed by Niels Provos and David Mazières, based on the Blowfish cipher, and presented at USENIX in 1999.[1] Besides incorporating a salt to protect against rainbow table attacks, bcrypt is an adaptive function: over time, the iteration count can be increased to make it slower, so it remains resistant to brute-force search attacks even with increasing computation power.
npm install --save jsonwebtoken
JSON Web Tokens are an open, industry standard RFC 7519 method for representing claims securely between two parties.
Install frontend dependencies, packages (React):
npm init react-app my-app
Get react app template.
Copyright 2019 Muyang Guo