{ "name": "serpentrace_backend", "version": "1.0.0", "description": "", "license": "ISC", "author": "", "type": "commonjs", "main": "index.js", "scripts": { "test": "jest", "test:watch": "jest --watch", "test:coverage": "jest --coverage", "test:redis": "jest --testNamePattern=\"RedisService\"", "start": "node ./dist/Api/index.js", "dev": "nodemon --watch src --ext ts,json --exec ts-node ./src/Api/index.ts", "build": "npm run build:clean && npm run build:compile && npm run build:copy-assets", "build:clean": "rimraf dist", "build:compile": "tsc", "build:copy-assets": "node scripts/copy-assets.js", "build:production": "npm run build:clean && npm run lint && npm run test && npm run migration:run && npm run build:compile && npm run build:copy-assets", "build:docker": "npm run build:clean && npm run build:compile && npm run build:copy-assets", "build:advanced": "ts-node scripts/build.ts", "build:advanced:prod": "ts-node scripts/build.ts --production --migrations --test", "build:advanced:ci": "ts-node scripts/build.ts --production --migrations --test --skip-lint", "deploy": "node -e \"console.log('Use deploy.bat on Windows or deploy.sh on Linux/Mac')\"", "deploy:prod": "npm run build:production && echo 'Build completed - ready for deployment'", "build:help": "node scripts/build-help.js", "build:status": "node scripts/build-help.js --status", "build:quick": "node scripts/build-help.js --quick", "prebuild": "npm run lint", "postbuild": "echo 'Build completed successfully!'", "lint": "echo 'Linting...' && echo 'No linter configured - add ESLint if needed'", "migration:create": "ts-node -r tsconfig-paths/register ./node_modules/typeorm/cli migration:create", "migration:generate": "ts-node -r tsconfig-paths/register ./node_modules/typeorm/cli -d ./src/Infrastructure/ormconfig.ts migration:generate", "migration:run": "ts-node -r tsconfig-paths/register ./node_modules/typeorm/cli -d ./src/Infrastructure/ormconfig.ts migration:run", "migration:revert": "ts-node -r tsconfig-paths/register ./node_modules/typeorm/cli -d ./src/Infrastructure/ormconfig.ts migration:revert", "migration:show": "ts-node -r tsconfig-paths/register ./node_modules/typeorm/cli -d ./src/Infrastructure/ormconfig.ts migration:show", "migration:full": "ts-node scripts/generate-migration.ts", "typecheck": "tsc --noEmit", "watch": "tsc --watch" }, "dependencies": { "@types/multer": "^2.0.0", "@types/nodemailer": "^7.0.1", "@types/uuid": "^10.0.0", "bcrypt": "^6.0.0", "cookie-parser": "^1.4.7", "express": "^5.1.0", "helmet": "^8.1.0", "jsonwebtoken": "^9.0.2", "minio": "^8.0.5", "multer": "^2.0.2", "nodemailer": "^7.0.5", "pg": "^8.16.3", "redis": "^5.8.1", "socket.io": "^4.8.1", "tsconfig-paths": "^4.2.0", "typeorm": "^0.3.26", "uuid": "^11.1.0", "winston": "^3.17.0" }, "devDependencies": { "@jest/globals": "^30.0.5", "@types/bcrypt": "^6.0.0", "@types/cookie-parser": "^1.4.9", "@types/express": "^5.0.3", "@types/jest": "^30.0.0", "@types/jsonwebtoken": "^9.0.10", "@types/node": "^24.3.3", "@types/pg": "^8.15.5", "@types/redis": "^4.0.10", "@types/socket.io": "^3.0.1", "@types/socket.io-client": "^1.4.36", "@types/supertest": "^6.0.3", "@types/swagger-jsdoc": "^6.0.4", "@types/swagger-ui-express": "^4.1.8", "jest": "^30.0.5", "nodemon": "^3.1.10", "rimraf": "^5.0.10", "socket.io-client": "^4.8.1", "supertest": "^7.1.4", "swagger-jsdoc": "^6.2.8", "swagger-ui-express": "^5.0.1", "ts-jest": "^29.4.1", "ts-node": "^10.9.2", "typescript": "^5.9.2" } }