{ "name": "re-workflow-backend", "version": "1.0.0", "description": "Royal Enfield Workflow Management System - Backend API (TypeScript)", "main": "dist/server.js", "scripts": { "start": "node dist/server.js", "dev": "npm run migrate && nodemon --exec ts-node -r tsconfig-paths/register src/server.ts", "build": "tsc", "build:watch": "tsc --watch", "start:prod": "NODE_ENV=production node dist/server.js", "test": "jest --coverage", "test:unit": "jest --testPathPattern=tests/unit", "test:integration": "jest --testPathPattern=tests/integration", "test:watch": "jest --watch", "lint": "eslint src/**/*.ts", "lint:fix": "eslint src/**/*.ts --fix", "format": "prettier --write \"src/**/*.ts\"", "type-check": "tsc --noEmit", "db:migrate": "sequelize-cli db:migrate", "db:migrate:undo": "sequelize-cli db:migrate:undo", "db:seed": "sequelize-cli db:seed:all", "clean": "rm -rf dist", "migrate": "ts-node -r tsconfig-paths/register src/scripts/migrate.ts", "seed:config": "ts-node -r tsconfig-paths/register src/scripts/seed-admin-config.ts" }, "dependencies": { "@google-cloud/storage": "^7.14.0", "@types/uuid": "^8.3.4", "axios": "^1.7.9", "bcryptjs": "^2.4.3", "bullmq": "^5.63.0", "cookie-parser": "^1.4.7", "cors": "^2.8.5", "dayjs": "^1.11.19", "dotenv": "^16.4.7", "express": "^4.21.2", "express-rate-limit": "^7.5.0", "helmet": "^8.0.0", "ioredis": "^5.8.2", "jsonwebtoken": "^9.0.2", "morgan": "^1.10.0", "multer": "^1.4.5-lts.1", "node-cron": "^3.0.3", "passport": "^0.7.0", "passport-jwt": "^4.0.1", "pg": "^8.13.1", "pg-hstore": "^2.3.4", "sequelize": "^6.37.5", "socket.io": "^4.8.1", "uuid": "^8.3.2", "web-push": "^3.6.7", "winston": "^3.17.0", "zod": "^3.24.1" }, "devDependencies": { "@types/bcryptjs": "^2.4.6", "@types/cookie-parser": "^1.4.10", "@types/cors": "^2.8.17", "@types/express": "^5.0.0", "@types/jest": "^29.5.14", "@types/jsonwebtoken": "^9.0.7", "@types/morgan": "^1.9.9", "@types/multer": "^1.4.12", "@types/node": "^22.10.5", "@types/passport": "^1.0.16", "@types/passport-jwt": "^4.0.1", "@types/supertest": "^6.0.2", "@types/web-push": "^3.6.4", "@typescript-eslint/eslint-plugin": "^8.19.1", "@typescript-eslint/parser": "^8.19.1", "eslint": "^9.17.0", "jest": "^29.7.0", "nodemon": "^3.1.9", "prettier": "^3.4.2", "sequelize-cli": "^6.6.2", "supertest": "^7.0.0", "ts-jest": "^29.2.5", "ts-node": "^10.9.2", "ts-node-dev": "^2.0.0", "tsconfig-paths": "^4.2.0", "typescript": "^5.7.2" }, "engines": { "node": ">=22.0.0", "npm": ">=10.0.0" } }