Files
filezzy-staging/backend/package.json
2026-02-04 20:23:48 +01:00

98 lines
3.7 KiB
JSON

{
"name": "backend",
"version": "1.0.0",
"description": "ToolsPlatform API Gateway",
"main": "dist/index.js",
"scripts": {
"dev": "ts-node-dev --respawn --transpile-only src/index.ts",
"build": "tsc",
"start": "node dist/index.js",
"db:migrate": "prisma migrate dev",
"db:push": "prisma db push",
"db:seed": "prisma db seed",
"db:studio": "prisma studio",
"db:list-tools": "ts-node scripts/list-db-tools.ts",
"db:list-tools-md": "ts-node scripts/list-db-tools.ts --md",
"db:list-tools-csv": "ts-node scripts/list-db-tools.ts --csv",
"db:export-tools-csv": "ts-node scripts/export-tools-csv.ts",
"db:export-tools-json": "ts-node scripts/export-tools-json.ts",
"db:add-pdf-to-pdfa": "ts-node scripts/add-pdf-to-pdfa-tool.ts",
"db:add-pdf-to-presentation": "ts-node scripts/add-pdf-to-presentation-tool.ts",
"db:add-pdf-to-epub": "ts-node scripts/add-pdf-to-epub-tool.ts",
"db:add-pdf-to-csv": "ts-node scripts/add-pdf-to-csv-tool.ts",
"db:set-pipeline-category": "ts-node scripts/set-pipeline-category.ts",
"db:check-tool-access": "ts-node scripts/check-tool-access.ts",
"db:fix-batch-free": "ts-node scripts/check-tool-access.ts --fix-batch-free",
"db:summarize-access": "ts-node scripts/summarize-db-access.ts",
"db:list-app-config": "ts-node scripts/list-app-config.ts",
"db:verify-deletion": "ts-node scripts/verify-account-deletion.ts",
"db:seed-test-users": "ts-node scripts/seed-test-users-for-api.ts",
"test": "vitest run",
"test:unit": "vitest run src/tests/unit",
"test:integration": "vitest run src/tests/integration",
"test:e2e": "vitest run src/tests/e2e",
"test:watch": "vitest",
"test:coverage": "vitest run --coverage",
"test:ui": "vitest --ui",
"api:token:free": "ts-node scripts/generate-test-token.ts free",
"api:token:premium": "ts-node scripts/generate-test-token.ts premium",
"api:token:both": "ts-node scripts/generate-test-token.ts both",
"api:test": "ts-node scripts/test-all-endpoints.ts",
"api:test:guest-limits": "ts-node scripts/test-guest-limits-api.ts",
"api:test:guest-config": "ts-node scripts/test-guest-config-api.ts",
"api:test:all-tiers": "ts-node scripts/test-all-tiers-config-api.ts",
"api:test:all-tiers:docker": "docker exec docker-api-gateway-1 npx ts-node scripts/test-all-tiers-config-api.ts",
"api:docs": "echo 'Swagger UI: http://localhost:4000/docs' && echo 'OpenAPI JSON: http://localhost:4000/docs/json'"
},
"prisma": {
"seed": "tsx prisma/seed.ts"
},
"keywords": [],
"author": "",
"license": "ISC",
"type": "commonjs",
"dependencies": {
"@fastify/cors": "^10.0.1",
"@fastify/helmet": "^12.0.1",
"@fastify/multipart": "^9.0.1",
"@fastify/rate-limit": "^10.1.1",
"@fastify/swagger": "^9.3.0",
"@fastify/swagger-ui": "^5.0.1",
"@prisma/client": "^5.22.0",
"@types/archiver": "^7.0.0",
"archiver": "^7.0.1",
"axios": "^1.7.9",
"bullmq": "^5.30.6",
"dotenv": "^16.4.7",
"exceljs": "^4.4.0",
"fastify": "^5.2.0",
"form-data": "^4.0.1",
"ioredis": "^5.4.2",
"jsonwebtoken": "^9.0.2",
"jwks-rsa": "^3.1.0",
"minio": "^8.0.2",
"node-cron": "^4.2.1",
"pino": "^9.5.0",
"pino-pretty": "^13.0.0",
"prisma": "^5.22.0",
"prom-client": "^15.1.3",
"resend": "^6.8.0",
"uuid": "^11.0.5",
"zod": "^3.24.1"
},
"devDependencies": {
"@types/jsonwebtoken": "^9.0.7",
"@types/node": "^25.0.10",
"@types/node-cron": "^3.0.11",
"@types/supertest": "^6.0.3",
"@types/uuid": "^10.0.0",
"@vitest/coverage-v8": "^4.0.18",
"supertest": "^7.2.2",
"ts-node": "^10.9.2",
"ts-node-dev": "^2.0.0",
"tsx": "^4.19.2",
"typescript": "^5.9.3",
"vitest": "^4.0.18"
}
}