package.json
{
"name": "node-rem",
"version": "0.11.2 ",
"description": "Node REM - NodeJS Rest Express MongoDB and more: typescript, passport, JWT, socket.io, HTTPS, HTTP2, async/await, nodemailer, templates, pagination, docker, etc.",
"author": "Duc Nguyen",
"main": "src/index.js",
"private": false,
"license": "MIT",
"engines": {
"node": ">=12",
"yarn": "*"
},
"scripts": {
"precommit": "yarn lint",
"prestart": "yarn docs",
"forever-start": "cross-env NODE_ENV=production forever start -a --uid 'node-rem' -v -c ts-node --files src/index.ts",
"start": "node built/index.js",
"stop": "cross-env NODE_ENV=production forever stop 'node-rem'",
"build": "tsc -p . && cp -R src/config ./built && npx rimraf -rf ./built/config/*.ts",
"logs": "forever logs",
"dev": "npx nodemon --watch 'src/**/*.ts' --ignore 'src/**/*.spec.ts' --exec ts-node --files src/index.ts",
"lint": "tslint src/**/*.ts",
"lint:fix": "yarn lint --fix",
"lint:watch": "yarn lint --watch",
"test": "cross-env NODE_ENV=test nyc --reporter=html --reporter=text --reporter=lcov mocha --require ts-node/register --full-trace --bail --timeout 20000 --exit tests/**/*.ts",
"test:unit": "cross-env NODE_ENV=test mocha tests/unit",
"test:integration": "cross-env NODE_ENV=test mocha --timeout 20000 tests/integration",
"test:watch": "cross-env NODE_ENV=test mocha --watch tests/unit",
"coverage": "nyc report --reporter=text-lcov | coveralls",
"codacy": "cat coverage/lcov.info | codacy-coverage -t $CODACY_PROJECT_TOKEN",
"postcoverage": "opn coverage/lcov-report/index.html",
"validate": "yarn lint && yarn test",
"postpublish": "git push --tags",
"deploy": "sh ./deploy.sh",
"docs": "apidoc -i src -o docs",
"postdocs": "opn docs/index.html",
"docker:start": "cross-env NODE_ENV=production forever start -a --uid 'node-rem' -v -c ts-node src/index.ts",
"docker:prod": "docker-compose -f docker-compose.yml -f docker-compose.prod.yml up",
"docker:dev": "docker-compose -f docker-compose.yml -f docker-compose.dev.yml up",
"docker:test": "docker-compose -f docker-compose.yml -f docker-compose.test.yml up --abort-on-container-exit"
},
"repository": {
"type": "git",
"url": "https://github.com/ngduc/node-rem.git"
},
"keywords": [
"rem",
"express",
"node",
"node.js",
"mongodb",
"mongoose",
"passport",
"es6",
"es7",
"es8",
"es2017",
"mocha",
"istanbul",
"nyc",
"eslint",
"Travis CI",
"coveralls",
"REST",
"API",
"boilerplate",
"generator",
"starter project",
"typescript",
"tslint"
],
"nyc": {
"extension": [
".ts",
".tsx"
],
"exclude": [
"**/*.d.ts"
],
"reporter": [
"html"
],
"all": true
},
"dependencies": {
"@slack/client": "^5.0.2",
"axios": "^0.26.1",
"bcryptjs": "2.4.3",
"bluebird": "^3.7.2",
"body-parser": "^1.19.0",
"compression": "^1.7.4",
"cors": "^2.8.5",
"cross-env": "^7.0.3",
"dotenv-safe": "^6.1.0",
"express": "^4.17.1",
"express-validation": "^1.0.2",
"handlebars": "^4.7.7",
"helmet": "^5.0.2",
"http-status": "^1.5.0",
"joi": "^14.3.1",
"jwt-simple": "^0.5.6",
"lodash": "^4.17.21",
"method-override": "^3.0.0",
"moment-timezone": "^0.5.33",
"mongoose": "^5.12.6",
"morgan": "^1.10.0",
"multer": "^1.4.2",
"nodemailer": "^6.6.0",
"nodemailer-mailgun-transport": "^2.0.3",
"passport": "^0.4.1",
"passport-http-bearer": "^1.0.1",
"passport-jwt": "4.0.0",
"serverless-http": "^2.7.0",
"socket.io": "^2.2.0",
"spdy": "^4.0.2",
"uuid": "^7.0.3"
},
"devDependencies": {
"@types/bluebird": "^3.5.33",
"@types/express": "^4.17.11",
"@types/joi": "^14.3.2",
"@types/mocha": "^5.2.6",
"@types/mongoose": "^5.10.3",
"@types/node": "^14.14.31",
"apidoc": "^0.17.7",
"chai": "^4.3.3",
"chai-as-promised": "^7.1.1",
"codacy-coverage": "^3.2.0",
"coveralls": "^3.1.0",
"eslint": "^8.11.0",
"eslint-config-airbnb-base": "^15.0.0",
"eslint-plugin-import": "^2.25.4",
"forever": "^3.0.4",
"husky": "^6.0.0",
"mocha": "^8.3.0",
"nodemon": "^2.0.7",
"nyc": "^15.1.0",
"opn-cli": "^4.1.0",
"rimraf": "^3.0.2",
"sinon": "^9.2.4",
"sinon-chai": "^3.5.0",
"supertest": "^6.1.3",
"ts-node": "^9.1.1",
"tslint": "^5.20.1",
"tslint-config-airbnb": "^5.11.2",
"tslint-config-prettier": "^1.18.0",
"typescript": "^4.6.2"
},
"resolutions": {
"deep-extend": "^0.5.1"
}
}