{ "name": "backend", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "start": "node server.js", "start:dev": "NODE_ENV=dev node -r dotenv/config server.js dotenv_config_path=.env.dev", "start:qa": "NODE_ENV=qa node -r dotenv/config server.js dotenv_config_path=.env.qa", "start:prod": "NODE_ENV=prod node -r dotenv/config server.js dotenv_config_path=.env.prod", "dev": "NODE_ENV=dev nodemon -r dotenv/config server.js dotenv_config_path=.env.dev", "dev:qa": "NODE_ENV=qa nodemon -r dotenv/config server.js dotenv_config_path=.env.qa", "test": "NODE_ENV=test jest", "test:watch": "NODE_ENV=test jest --watch", "test:coverage": "jest --coverage --forceExit --maxWorkers=4", "test:unit": "NODE_ENV=test jest tests/unit", "test:integration": "NODE_ENV=test jest tests/integration", "test:ci": "NODE_ENV=test jest --ci --coverage --maxWorkers=2" }, "keywords": [], "author": "", "license": "ISC", "dependencies": { "@aws-sdk/client-ses": "^3.896.0", "@aws-sdk/credential-providers": "^3.901.0", "@googlemaps/google-maps-services-js": "^3.4.2", "bcryptjs": "^3.0.2", "body-parser": "^2.2.0", "cookie-parser": "^1.4.7", "cors": "^2.8.5", "csrf": "^3.1.0", "dompurify": "^3.2.6", "dotenv": "^17.2.0", "express": "^5.1.0", "express-rate-limit": "^8.1.0", "express-validator": "^7.2.1", "google-auth-library": "^10.3.0", "helmet": "^8.1.0", "jsdom": "^27.0.0", "jsonwebtoken": "^9.0.2", "morgan": "^1.10.1", "multer": "^2.0.2", "node-cron": "^3.0.3", "pg": "^8.16.3", "sequelize": "^6.37.7", "sequelize-cli": "^6.6.3", "stripe": "^18.4.0", "uuid": "^11.1.0", "winston": "^3.17.0", "winston-daily-rotate-file": "^5.0.0" }, "devDependencies": { "@types/jest": "^30.0.0", "jest": "^30.1.3", "nodemon": "^3.1.10", "sequelize-mock": "^0.10.2", "sinon": "^21.0.0", "supertest": "^7.1.4" } }