47 lines
1.5 KiB
JSON
47 lines
1.5 KiB
JSON
{
|
|
"name": "paper-burner-server",
|
|
"version": "1.0.0",
|
|
"description": "Paper Burner X Backend Server",
|
|
"main": "src/index.js",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "nodemon src/index.js",
|
|
"start": "node src/index.js",
|
|
"test": "NODE_ENV=test node --experimental-vm-modules ./node_modules/jest/bin/jest.js --runInBand",
|
|
"openapi:validate": "node -e \"require('yaml'); const fs=require('fs'); const y=require('yaml').parse(fs.readFileSync('../docs/openapi.yaml','utf8')); console.log('OpenAPI parsed OK:', !!y);\"",
|
|
"lint": "eslint .",
|
|
"prisma:generate": "prisma generate",
|
|
"prisma:migrate": "prisma migrate dev",
|
|
"prisma:deploy": "prisma migrate deploy",
|
|
"prisma:studio": "prisma studio",
|
|
"smoke:health": "node ./scripts/smoke-health.mjs"
|
|
},
|
|
"keywords": ["paper-burner", "translation", "ocr"],
|
|
"author": "",
|
|
"license": "GPL-2.0",
|
|
"dependencies": {
|
|
"@prisma/client": "^5.22.0",
|
|
"bcryptjs": "^2.4.3",
|
|
"body-parser": "^1.20.3",
|
|
"cookie-parser": "^1.4.7",
|
|
"cors": "^2.8.5",
|
|
"dotenv": "^16.4.5",
|
|
"express": "^4.21.1",
|
|
"express-rate-limit": "^7.4.1",
|
|
"helmet": "^8.0.0",
|
|
"jsonwebtoken": "^9.0.2",
|
|
"morgan": "^1.10.0",
|
|
"multer": "^1.4.5-lts.1",
|
|
"node-fetch": "^3.3.2",
|
|
"uuid": "^11.0.3"
|
|
},
|
|
"devDependencies": {
|
|
"jest": "^29.7.0",
|
|
"supertest": "^7.1.1",
|
|
"eslint": "^9.12.0",
|
|
"nodemon": "^3.1.7",
|
|
"prisma": "^5.22.0",
|
|
"yaml": "^2.6.0"
|
|
}
|
|
}
|