UNPKG

node-express-mongodb-jwt-rest-api-skeleton

Version:

Node.js express.js MongoDB JWT REST API - This is a basic API REST skeleton written on JavaScript using async/await. Great for building a starter web API for your front-end (Android, iOS, Vue, react, angular, or anything that can consume an API)

142 lines (141 loc) 4.02 kB
{ "name": "node-express-mongodb-jwt-rest-api-skeleton", "version": "9.0.5", "description": "Node.js express.js MongoDB JWT REST API - This is a basic API REST skeleton written on JavaScript using async/await. Great for building a starter web API for your front-end (Android, iOS, Vue, react, angular, or anything that can consume an API)", "license": "MIT", "repository": { "type": "git", "url": "https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton.git" }, "scripts": { "start": "cross-env NODE_ENV=production pm2 start server.js", "mocha": "nyc mocha --timeout=5000 --exit", "test": "npm run coverage:clean && npm run test:unit && npm run test:e2e && npm run coverage", "test:unit": "cross-env NODE_ENV=test jest --coverage", "test:e2e": "cross-env NODE_ENV=test npm run fresh && npm run mocha", "dev": "cross-env NODE_ENV=development nodemon --inspect=9230 server.js", "fresh": "npm run clean && npm run seed", "clean": "node clean.js", "seed": "node seed.js", "prettier": "prettier --write --config .prettierrc.json \"**/*.js\"", "lint": "eslint --fix --config .eslintrc.json \"**/*.js\"", "remark": "remark . -o", "coverage": "npm run coverage:merge && npm run coverage:merge-report", "coverage:clean": "rm -rf .nyc_output && rm -rf coverage", "coverage:merge": "istanbul-merge --out coverage/merged/coverage-final.json ./coverage/unit/coverage-final.json ./coverage/e2e/coverage-final.json", "coverage:merge-report": "nyc report --reporter=lcov --reporter=text --reporter=json --temp-dir=./coverage/merged --report-dir=./coverage/merged" }, "nyc": { "reporter": [ "json", "text", "lcov" ], "report-dir": "coverage/e2e", "include": [ "**/*.js" ], "exclude": [ "**/*.test.js", "jest.config.js", "**/data/**", "**/node_modules/**", "**/.history/**", "**/test/**", "**/coverage/**", "**/tmp/**" ], "all": true }, "husky": { "hooks": { "pre-commit": "lint-staged && npm run remark", "pre-push": "npm run test" } }, "lint-staged": { "*.js": [ "prettier --write", "eslint --fix" ] }, "dependencies": { "babel-eslint": "^10.1.0", "bcrypt": "^5.0.1", "body-parser": "^1.20.0", "compression": "^1.7.4", "cors": "^2.8.5", "date-fns": "^2.28.0", "dotenv-safe": "^8.2.0", "ejs": "^3.1.7", "expeditious-engine-redis": "^0.1.2", "express": "^4.18.1", "express-expeditious": "^5.1.1", "express-validator": "^6.14.0", "helmet": "^4.6.0", "i18n": "^0.13.4", "jsonwebtoken": "^8.5.1", "mongoose": "^5.13.14", "mongoose-paginate-v2": "^1.6.3", "morgan": "^1.10.0", "nodemailer": "^6.7.4", "nodemailer-mailgun-transport": "^2.1.3", "passport": "^0.4.1", "passport-jwt": "^4.0.0", "request-ip": "^2.1.3", "trim-request": "^1.0.6", "uuid": "^8.3.2", "validator": "^13.7.0" }, "devDependencies": { "chai": "^4.3.6", "chai-http": "^4.3.0", "cross-env": "^7.0.3", "eslint": "^7.32.0", "eslint-config-formidable": "^4.0.0", "eslint-config-prettier": "^7.2.0", "eslint-plugin-prettier": "^3.4.1", "faker": "^5.5.3", "husky": "^4.3.8", "istanbul-merge": "^1.1.1", "jest": "^26.6.3", "lint-staged": "^10.5.4", "mocha": "^8.4.0", "mongo-seeding": "^3.7.1", "nodemon": "^2.0.16", "nyc": "^15.1.0", "prettier": "^2.6.2", "prettier-eslint": "^12.0.0", "remark-cli": "^9.0.0" }, "keywords": [ "javascript", "api", "node", "express", "mongo", "mongodb", "jwt", "postman", "i18n", "jwt-authentication", "token", "eslint", "starter", "web", "app", "mongoose", "rest", "skeleton", "async", "await", "mvp", "front-end", "testing", "prettier", "mocha", "chai", "redis", "JSDoc" ] }