{ "name": "shinan_api", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "prrebuild": "rimraf dist", "build": "tsc -p tsconfig.build.json", "typeCheck": "tsc --noEmit", "start": "NODE_ENV=production node --trace-warnings dist/server.js", "dev": "nodemon", "tsx": "tsx watch --env-file=.env src/server.ts", "lint": "eslint . --ext .ts", "lint:fix": "eslint . --ext .ts --fix", "format": "prettier --ignore-path .gitignore --write \"**/*.+(js|ts|json)\"", "seed": "node dist/db/seeders/index.js", "seed:ts": "ts-node src/db/seeders/index.ts", "test": "jest --config jest.config.js --coverage", "prepare": "husky || true" }, "lint-staged": { "**/*.ts": [ "pnpm run format", "pnpm run lint:fix", "git add ." ] }, "keywords": [], "author": "Mahyar", "license": "ISC", "dependencies": { "@aws-sdk/client-s3": "^3.691.0", "@faker-js/faker": "^7.6.0", "@nestjs/mapped-types": "^2.0.6", "ansi-colors": "^4.1.3", "axios": "^1.7.7", "bcryptjs": "^2.4.3", "bullmq": "^5.25.6", "class-transformer": "^0.5.1", "class-validator": "^0.14.1", "compression": "^1.7.5", "cookie-parser": "^1.4.7", "cors": "^2.8.5", "csv": "^6.3.11", "dayjs": "^1.11.13", "dotenv": "^16.4.5", "express": "^4.21.1", "express-basic-auth": "^1.2.1", "express-rate-limit": "^7.4.1", "handlebars": "^4.7.8", "inversify": "^6.1.4", "inversify-express-utils": "6.4.6", "ioredis": "^5.4.1", "jalali-moment": "^3.3.11", "jsonwebtoken": "^9.0.2", "mongoose": "^8.8.1", "mongoose-sequence": "^6.0.1", "morgan": "^1.10.0", "multer": "1.4.5-lts.1", "multer-s3": "^3.0.1", "node-cache": "^5.1.2", "nodemailer": "^6.9.16", "openai": "^4.0.0", "passport": "^0.7.0", "passport-jwt": "^4.0.1", "reflect-metadata": "^0.2.2", "slugify": "^1.6.6", "socket.io": "^4.8.1", "strip-ansi": "6.0.1", "swagger-ui-express": "^5.0.1", "ulid": "^3.0.1", "winston": "^3.17.0" }, "devDependencies": { "@commitlint/cli": "^19.5.0", "@commitlint/config-conventional": "^19.5.0", "@types/bcryptjs": "^2.4.6", "@types/compression": "^1.7.5", "@types/cookie-parser": "^1.4.10", "@types/cors": "^2.8.17", "@types/express": "^4.17.21", "@types/jsonwebtoken": "^9.0.7", "@types/mongoose-sequence": "^3.0.11", "@types/morgan": "^1.9.9", "@types/multer": "^1.4.12", "@types/multer-s3": "^3.0.3", "@types/node": "^20.17.6", "@types/nodemailer": "^6.4.16", "@types/passport": "^1.0.17", "@types/passport-jwt": "^4.0.1", "@types/swagger-ui-express": "^4.1.7", "@typescript-eslint/eslint-plugin": "^8.14.0", "@typescript-eslint/parser": "^8.14.0", "eslint": "^8.57.1", "eslint-config-prettier": "^9.1.0", "eslint-plugin-import": "^2.31.0", "eslint-plugin-prettier": "^5.2.1", "husky": "^9.1.6", "lint-staged": "^15.2.10", "nodemon": "^3.1.7", "prettier": "^3.3.3", "rimraf": "^6.0.1", "ts-node": "^10.9.2", "tsx": "^4.19.2", "typescript": "^5.6.3" }, "packageManager": "pnpm@9.13.0+sha512.beb9e2a803db336c10c9af682b58ad7181ca0fbd0d4119f2b33d5f2582e96d6c0d93c85b23869295b765170fbdaa92890c0da6ada457415039769edf3c959efe" }