68 lines
1.9 KiB
JSON
68 lines
1.9 KiB
JSON
{
|
|
"name": "coaching-saas-workspace",
|
|
"description": "Coaching SaaS Workspace - template backend",
|
|
"scripts": {
|
|
"start": "node src/index.js",
|
|
"start:development": "npm run db:migrate && npm run db:seed && npm run watch",
|
|
"setup:production": "npm run db:migrate && npm run db:seed",
|
|
"lint": "eslint . --ext .js",
|
|
"test": "node --test test/*.test.js",
|
|
"coaching:retention": "node src/jobs/enforceCoachingRetention.js",
|
|
"coaching:reminders": "node src/jobs/scheduleCoachingReminders.js",
|
|
"db:migrate": "sequelize-cli db:migrate",
|
|
"db:seed": "sequelize-cli db:seed:all",
|
|
"db:drop": "sequelize-cli db:drop",
|
|
"db:create": "sequelize-cli db:create",
|
|
"watch": "node watcher.js"
|
|
},
|
|
"dependencies": {
|
|
"@sentry/node": "^10.67.0",
|
|
"axios": "^1.18.1",
|
|
"bcrypt": "^6.0.0",
|
|
"chokidar": "^4.0.3",
|
|
"cors": "^2.8.6",
|
|
"csv-parser": "^3.2.1",
|
|
"express": "^4.21.2",
|
|
"formidable": "^3.5.4",
|
|
"helmet": "^8.3.0",
|
|
"json2csv": "^5.0.7",
|
|
"jsonwebtoken": "^9.0.2",
|
|
"lodash": "^4.18.1",
|
|
"moment": "2.30.1",
|
|
"multer": "^2.0.2",
|
|
"nodemailer": "^9.0.3",
|
|
"passport": "^0.7.0",
|
|
"passport-google-oauth2": "^0.2.0",
|
|
"passport-jwt": "^4.0.1",
|
|
"passport-microsoft": "^0.1.0",
|
|
"pg": "^8.16.3",
|
|
"pg-hstore": "2.3.4",
|
|
"sequelize": "^6.37.8",
|
|
"sequelize-json-schema": "^2.1.1"
|
|
},
|
|
"engines": {
|
|
"node": ">=18"
|
|
},
|
|
"private": true,
|
|
"devDependencies": {
|
|
"cross-env": "7.0.3",
|
|
"eslint": "^8.57.1",
|
|
"eslint-plugin-import": "^2.29.1",
|
|
"node-mocks-http": "1.9.0",
|
|
"nodemon": "^3.1.10",
|
|
"sequelize-cli": "^6.6.5",
|
|
"swagger-jsdoc": "^6.3.0",
|
|
"swagger-ui-express": "^5.0.1"
|
|
},
|
|
"resolutions": {
|
|
"js-yaml": "^5.2.1",
|
|
"dottie": "2.0.7",
|
|
"jws": "4.0.1",
|
|
"lodash": "^4.18.1",
|
|
"passport-oauth2": "1.8.0",
|
|
"underscore": "^1.13.8",
|
|
"uuid": "11.1.1",
|
|
"validator": "^13.15.35"
|
|
}
|
|
}
|