api/package.json
{
"name": "api",
"version": "1.0.0",
"description": "",
"main": "index.js",
"engines": {
"node": "^18.20",
"npm": "^10.5",
"yarn": "🍎 This project uses NPM, please do not use YARN. 🍎"
},
"scripts": {
"//": "dev sleep 2 seconds to let lib compile",
"dev": "sleep 2 && concurrently -k 'npm run dev:*'",
"dev:api": "nodemon",
"dev:tasks": "RUN_TASKS=true PORT=8087 nodemon",
"debug": "DEBUG=express:* nodemon",
"test": "jest --silent --runInBand --detectOpenHandles --testTimeout=30000",
"test:debug": "jest --detectOpenHandles --forceExit --testTimeout=30000",
"test:unit_test": "jest --runInBand --detectOpenHandles --testTimeout=30000 --testPathIgnorePatterns '__tests__'",
"coverage": "jest --runInBand --coverage --silent --testTimeout=30000",
"lint": "eslint src --ext .js,.ts",
"lint:fix": "eslint src --ext .js,.ts --fix",
"lint:report": "eslint src --ext .js --format @microsoft/eslint-formatter-sarif --output-file eslint-results.sarif",
"check-types": "tsc -p tsconfig.check.json --emitDeclarationOnly",
"doc": "node ./src/utils/generate-models-documentation.js",
"clean": "rm -fr node_modules .turbo",
"build": "tsc -b ./tsconfig.build.json",
"migrate-status": "tsx node_modules/.bin/migrate-mongo status",
"migrate-create": "tsx node_modules/.bin/migrate-mongo create",
"migrate-down": "tsx --max-old-space-size=4096 node_modules/.bin/migrate-mongo down",
"migrate-up": "tsx --max-old-space-size=4096 node_modules/.bin/migrate-mongo up"
},
"author": "SELEGO",
"license": "MIT",
"dependencies": {
"@bull-board/express": "^5.21.1",
"@elastic/elasticsearch": "^7.14.0",
"@fast-csv/format": "^5.0.0",
"@fast-csv/parse": "^5.0.0",
"@godaddy/terminus": "^4.12.1",
"@selego/mongoose-elastic": "1.7.1",
"@sentry/node": "^8.25.0",
"@sentry/profiling-node": "^8.25.0",
"archiver": "^7.0.1",
"aws-sdk": "^2.1248.0",
"bcryptjs": "^2.4.3",
"body-parser": "^1.20.3",
"bson": "^6.7.0",
"bullmq": "^5.10.0",
"config": "^3.3.11",
"cookie-parser": "^1.4.6",
"cors": "^2.8.5",
"date-fns": "^3.6.0",
"dayjs": "^1.11.8",
"dotenv": "^10.0.0",
"eslint-plugin-jest": "^27.2.1",
"express": "^4.19.2",
"express-basic-auth": "^1.2.1",
"express-fileupload": "^1.4.0",
"file-type": "^16.5.3",
"forcedomain": "^2.2.11",
"form-data": "^4.0.0",
"helmet": "^4.5.0",
"joi": "^17.7.0",
"jsonwebtoken": "^9.0.1",
"migrate-mongo": "^11.0.0",
"mime-types": "^2.1.35",
"mongoose": "^6.12.9",
"mongoose-patch-history": "^2.0.0",
"nanoid": "^2.1.11",
"netmask": "^2.0.2",
"node-fetch": "^2.6.1",
"nodemailer": "^6.9.14",
"passport": "^0.6.0",
"passport-jwt": "^4.0.0",
"password-validator": "^5.3.0",
"pdfkit": "^0.15.0",
"pm2": "^5.3.0",
"redis": "^4.6.5",
"sanitize-html": "^2.12.1",
"sib-api-v3-sdk": "^8.5.0",
"snu-lib": "*",
"sync-request-curl": "^3.0.0",
"uuid": "^9.0.0",
"validator": "^13.7.0",
"winston": "^3.14.2"
},
"devDependencies": {
"@faker-js/faker": "^8.4.1",
"@jest/test-sequencer": "^29.7.0",
"@types/bull": "^4.10.0",
"@types/jest": "^27.5.1",
"@types/pdfkit": "^0.13.4",
"concurrently": "^9.0.1",
"csv-parser": "^3.0.0",
"eslint": "^8.56.0",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-jest": "^27.2.1",
"eslint-plugin-prettier": "^5.0.1",
"jest": "27.5.1",
"jest-cli": "27.5.1",
"nodemon": "^3.1.0",
"supertest": "6.3.4",
"ts-jest": "^29.1.2",
"typescript": "5.4.5",
"xlsx": "~0.18.5"
}
}