{ "name": "pms-backend-node", "version": "1.0.0", "description": "PLM System Backend - Node.js + TypeScript", "main": "dist/app.js", "scripts": { "start": "node dist/app.js", "dev": "nodemon src/app.ts", "build": "tsc", "test": "jest", "test:watch": "jest --watch", "lint": "eslint src/ --ext .ts", "lint:fix": "eslint src/ --ext .ts --fix", "format": "prettier --write src/" }, "keywords": [ "plm", "nodejs", "typescript", "express", "postgresql" ], "author": "", "license": "ISC", "dependencies": { "@types/mssql": "^9.1.8", "axios": "^1.11.0", "bcryptjs": "^2.4.3", "compression": "^1.7.4", "cors": "^2.8.5", "dotenv": "^16.3.1", "express": "^4.18.2", "express-rate-limit": "^7.1.5", "helmet": "^7.1.0", "imap": "^0.8.19", "joi": "^17.11.0", "jsonwebtoken": "^9.0.2", "mailparser": "^3.7.5", "mssql": "^11.0.1", "multer": "^1.4.5-lts.1", "mysql2": "^3.15.0", "node-cron": "^4.2.1", "nodemailer": "^6.10.1", "oracledb": "^6.9.0", "pg": "^8.16.3", "redis": "^4.6.10", "winston": "^3.11.0" }, "devDependencies": { "@types/bcryptjs": "^2.4.6", "@types/compression": "^1.7.5", "@types/cors": "^2.8.17", "@types/express": "^4.17.21", "@types/fs-extra": "^11.0.4", "@types/imap": "^0.8.42", "@types/jest": "^29.5.11", "@types/jsonwebtoken": "^9.0.5", "@types/mailparser": "^3.4.6", "@types/morgan": "^1.9.9", "@types/multer": "^1.4.13", "@types/node": "^20.10.5", "@types/node-cron": "^3.0.11", "@types/nodemailer": "^6.4.20", "@types/oracledb": "^6.9.1", "@types/pg": "^8.15.5", "@types/sanitize-html": "^2.9.5", "@types/supertest": "^6.0.3", "@types/uuid": "^10.0.0", "@typescript-eslint/eslint-plugin": "^6.14.0", "@typescript-eslint/parser": "^6.14.0", "eslint": "^8.55.0", "jest": "^29.7.0", "nodemon": "^3.1.10", "prettier": "^3.1.0", "supertest": "^6.3.4", "ts-jest": "^29.1.1", "ts-node": "^10.9.2", "typescript": "^5.3.3" }, "engines": { "node": ">=20.10.0", "npm": ">=10.0.0" } }