2026-01-08 06:51:33 +00:00
|
|
|
{
|
2026-01-09 06:28:15 +00:00
|
|
|
"name": "e-learning-backend",
|
|
|
|
|
"version": "1.0.0",
|
|
|
|
|
"description": "E-Learning Platform Backend API with TypeScript and TSOA",
|
|
|
|
|
"main": "dist/server.js",
|
|
|
|
|
"scripts": {
|
|
|
|
|
"dev": "nodemon",
|
2026-01-09 10:14:13 +00:00
|
|
|
"build": "npm run tsoa:gen && tsc",
|
2026-01-09 06:28:15 +00:00
|
|
|
"start": "node dist/server.js",
|
2026-01-22 15:56:56 +07:00
|
|
|
"tsoa:gen": "tsoa spec-and-routes && node scripts/post-tsoa.js",
|
2026-01-09 06:28:15 +00:00
|
|
|
"prisma:generate": "prisma generate",
|
|
|
|
|
"prisma:migrate": "prisma migrate dev",
|
|
|
|
|
"prisma:seed": "node prisma/seed.js",
|
|
|
|
|
"prisma:studio": "prisma studio",
|
|
|
|
|
"test": "jest",
|
|
|
|
|
"test:watch": "jest --watch",
|
|
|
|
|
"test:coverage": "jest --coverage",
|
|
|
|
|
"lint": "eslint . --ext .ts",
|
|
|
|
|
"format": "prettier --write \"src/**/*.ts\""
|
|
|
|
|
},
|
|
|
|
|
"dependencies": {
|
2026-01-30 08:02:39 +00:00
|
|
|
"@pdf-lib/fontkit": "^1.1.1",
|
2026-01-09 06:28:15 +00:00
|
|
|
"@prisma/client": "^5.22.0",
|
|
|
|
|
"bcrypt": "^5.1.1",
|
|
|
|
|
"cors": "^2.8.5",
|
|
|
|
|
"dotenv": "^16.4.5",
|
|
|
|
|
"express": "^4.21.2",
|
|
|
|
|
"express-rate-limit": "^7.5.0",
|
|
|
|
|
"helmet": "^8.0.0",
|
|
|
|
|
"joi": "^17.13.3",
|
|
|
|
|
"jsonwebtoken": "^9.0.2",
|
|
|
|
|
"minio": "^8.0.2",
|
|
|
|
|
"multer": "^1.4.5-lts.1",
|
2026-01-13 03:10:44 +00:00
|
|
|
"nodemailer": "^7.0.12",
|
2026-01-30 08:02:39 +00:00
|
|
|
"pdf-lib": "^1.17.1",
|
2026-01-09 06:28:15 +00:00
|
|
|
"redis": "^4.7.0",
|
|
|
|
|
"reflect-metadata": "^0.2.2",
|
|
|
|
|
"swagger-ui-express": "^5.0.1",
|
|
|
|
|
"tsoa": "^6.4.0",
|
|
|
|
|
"winston": "^3.17.0"
|
|
|
|
|
},
|
|
|
|
|
"devDependencies": {
|
|
|
|
|
"@types/bcrypt": "^5.0.2",
|
|
|
|
|
"@types/cors": "^2.8.17",
|
|
|
|
|
"@types/express": "^5.0.0",
|
|
|
|
|
"@types/jsonwebtoken": "^9.0.7",
|
|
|
|
|
"@types/multer": "^1.4.12",
|
|
|
|
|
"@types/node": "^22.10.5",
|
2026-01-13 03:10:44 +00:00
|
|
|
"@types/nodemailer": "^7.0.5",
|
2026-01-09 06:28:15 +00:00
|
|
|
"@types/swagger-ui-express": "^4.1.6",
|
|
|
|
|
"@typescript-eslint/eslint-plugin": "^8.19.1",
|
|
|
|
|
"@typescript-eslint/parser": "^8.19.1",
|
|
|
|
|
"eslint": "^9.18.0",
|
|
|
|
|
"jest": "^29.7.0",
|
|
|
|
|
"nodemon": "^3.1.9",
|
|
|
|
|
"prettier": "^3.4.2",
|
|
|
|
|
"prisma": "^5.22.0",
|
|
|
|
|
"supertest": "^7.0.0",
|
|
|
|
|
"ts-jest": "^29.2.5",
|
|
|
|
|
"tsconfig-paths": "^4.2.0",
|
|
|
|
|
"typescript": "^5.7.3"
|
|
|
|
|
}
|
2026-01-09 10:14:13 +00:00
|
|
|
}
|