87 lines
2.8 KiB
JSON
87 lines
2.8 KiB
JSON
|
|
{
|
||
|
|
"name": "backend",
|
||
|
|
"version": "1.0.0",
|
||
|
|
"description": "",
|
||
|
|
"main": "index.js",
|
||
|
|
"scripts": {
|
||
|
|
"dev": "nodemon --exec ts-node src/index.ts",
|
||
|
|
"build": "tsc",
|
||
|
|
"start": "node dist/index.js",
|
||
|
|
"prisma:generate": "prisma generate",
|
||
|
|
"prisma:migrate": "prisma migrate dev",
|
||
|
|
"prisma:migrate:deploy": "prisma migrate deploy",
|
||
|
|
"prisma:studio": "prisma studio",
|
||
|
|
"prisma:seed": "ts-node prisma/seed.ts",
|
||
|
|
"generate-covers": "ts-node scripts/generate-missing-covers.ts",
|
||
|
|
"backfill-banner-watermark": "ts-node scripts/backfill-banner-watermark.ts",
|
||
|
|
"backfill-theme-colors": "ts-node scripts/backfill-theme-colors.ts",
|
||
|
|
"test:chat-vs-completions": "ts-node scripts/test-chat-vs-completions.ts",
|
||
|
|
"build:prod": "npm run prisma:generate && npm run build",
|
||
|
|
"deploy:prod": "npm run build:prod && npm run prisma:migrate:deploy",
|
||
|
|
"test": "jest",
|
||
|
|
"test:watch": "jest --watch",
|
||
|
|
"test:coverage": "jest --coverage",
|
||
|
|
"test:unit": "jest --testPathPatterns=__tests__/services",
|
||
|
|
"test:integration": "jest --testPathPatterns=__tests__/integration",
|
||
|
|
"test:call-records": "node scripts/verify-call-records-api.js",
|
||
|
|
"playground:xhs-cover": "ts-node scripts/xhs-cover-playground.ts",
|
||
|
|
"playground:xhs-generate": "ts-node scripts/generate-xhs-cover-assets.ts",
|
||
|
|
"playground": "npm run playground:xhs-generate && npm run dev"
|
||
|
|
},
|
||
|
|
"prisma": {
|
||
|
|
"seed": "ts-node prisma/seed.ts"
|
||
|
|
},
|
||
|
|
"keywords": [],
|
||
|
|
"author": "",
|
||
|
|
"license": "ISC",
|
||
|
|
"type": "commonjs",
|
||
|
|
"dependencies": {
|
||
|
|
"@alicloud/pop-core": "^1.8.0",
|
||
|
|
"@prisma/client": "^6.19.0",
|
||
|
|
"@types/multer": "^2.0.0",
|
||
|
|
"@types/uuid": "^10.0.0",
|
||
|
|
"@xenova/transformers": "^2.17.2",
|
||
|
|
"ali-oss": "^6.23.0",
|
||
|
|
"axios": "^1.13.2",
|
||
|
|
"bcryptjs": "^3.0.3",
|
||
|
|
"canvas": "^3.2.1",
|
||
|
|
"cors": "^2.8.5",
|
||
|
|
"dotenv": "^17.2.3",
|
||
|
|
"epub": "^1.3.0",
|
||
|
|
"express": "^5.2.1",
|
||
|
|
"express-rate-limit": "^7.5.1",
|
||
|
|
"joi": "^18.0.2",
|
||
|
|
"jsonwebtoken": "^9.0.3",
|
||
|
|
"jwks-rsa": "^3.2.0",
|
||
|
|
"mammoth": "^1.11.0",
|
||
|
|
"multer": "^2.0.2",
|
||
|
|
"openai": "^6.16.0",
|
||
|
|
"pdf-parse": "^1.1.1",
|
||
|
|
"prisma": "^6.19.0",
|
||
|
|
"uuid": "^13.0.0",
|
||
|
|
"winston": "^3.18.3"
|
||
|
|
},
|
||
|
|
"devDependencies": {
|
||
|
|
"@types/ali-oss": "^6.23.2",
|
||
|
|
"@types/axios": "^0.9.36",
|
||
|
|
"@types/bcryptjs": "^2.4.6",
|
||
|
|
"@types/cors": "^2.8.19",
|
||
|
|
"@types/express": "^5.0.6",
|
||
|
|
"@types/jest": "^30.0.0",
|
||
|
|
"@types/jsonwebtoken": "^9.0.10",
|
||
|
|
"@types/node": "^24.10.1",
|
||
|
|
"@types/pdf-parse": "^1.1.5",
|
||
|
|
"@types/supertest": "^6.0.3",
|
||
|
|
"@typescript-eslint/eslint-plugin": "^8.48.1",
|
||
|
|
"@typescript-eslint/parser": "^8.48.1",
|
||
|
|
"eslint": "^9.39.1",
|
||
|
|
"jest": "^30.2.0",
|
||
|
|
"nodemon": "^3.1.11",
|
||
|
|
"prettier": "^3.7.4",
|
||
|
|
"supertest": "^7.2.2",
|
||
|
|
"ts-jest": "^29.4.6",
|
||
|
|
"ts-node": "^10.9.2",
|
||
|
|
"typescript": "^5.9.3"
|
||
|
|
}
|
||
|
|
}
|