Files
incudal/server/package.json
T
2026-06-20 14:26:29 +08:00

78 lines
2.5 KiB
JSON

{
"name": "server",
"version": "1.0.0",
"description": "Incudal 后端服务",
"type": "module",
"main": "dist/app.js",
"types": "dist/app.d.ts",
"scripts": {
"postinstall": "prisma generate",
"dev": "cross-env NODE_ENV=development JWT_SECRET=dev-secret-12345678 PORT=8888 tsx watch src/app.ts",
"start": "node dist/app.js",
"build": "tsc",
"type-check": "tsc --noEmit",
"migrate:data": "tsx scripts/migrate-data.ts",
"backfill:instance-network": "tsx scripts/backfill-instance-network-addresses.ts",
"fix:migrated-billing": "tsx scripts/fix-migrated-instance-billing.ts",
"reset:db": "tsx scripts/reset-db.ts",
"seed:test-data": "tsx scripts/seed-test-data.ts",
"seed:bulk-local-data": "tsx scripts/seed-bulk-local-data.ts",
"update:admin-quota": "tsx scripts/update-admin-quota.ts",
"test:prisma": "tsx scripts/test-prisma.ts",
"test:app": "tsx scripts/test-app-start.ts",
"test:agent-auth": "tsx scripts/test-agent-auth.ts",
"test:security-config": "tsx scripts/test-security-config.ts",
"test:api": "tsx scripts/test-api.ts",
"analyze:queries": "tsx scripts/analyze-queries.ts"
},
"dependencies": {
"@fastify/cookie": "^11.0.2",
"@fastify/cors": "^10.0.1",
"@fastify/helmet": "^13.0.2",
"@fastify/jwt": "^9.0.1",
"@fastify/multipart": "^9.0.3",
"@fastify/rate-limit": "^10.3.0",
"@fastify/static": "^8.0.3",
"@fastify/websocket": "^11.0.1",
"@libsql/client": "^0.14.0",
"@prisma/adapter-pg": "^7.1.0",
"@prisma/client": "^7.1.0",
"@types/ws": "^8.18.1",
"basic-ftp": "^5.0.5",
"bcryptjs": "^2.4.3",
"dotenv": "^17.2.3",
"drizzle-orm": "^0.38.2",
"fastify": "^5.1.0",
"fastify-cloudflare-turnstile": "^2.0.2",
"ip-address": "^10.1.0",
"jsonwebtoken": "^9.0.3",
"nanoid": "^5.1.6",
"node-cron": "^4.2.1",
"nodemailer": "^7.0.11",
"otplib": "^12.0.1",
"p-limit": "^7.2.0",
"pg": "^8.16.3",
"pino-pretty": "^13.0.0",
"qrcode": "^1.5.4",
"ssh2-sftp-client": "^11.0.0",
"undici": "^7.1.0",
"webdav": "^5.8.0",
"ws": "^8.18.3"
},
"devDependencies": {
"@types/node": "^24.10.1",
"@types/node-cron": "^3.0.11",
"@types/nodemailer": "^7.0.4",
"@types/pg": "^8.15.6",
"@types/qrcode": "^1.5.6",
"@types/ssh2-sftp-client": "^9.0.4",
"@typescript-eslint/eslint-plugin": "^8.48.1",
"@typescript-eslint/parser": "^8.48.1",
"cross-env": "^10.1.0",
"drizzle-kit": "^0.30.1",
"prisma": "^7.1.0",
"tsx": "^4.21.0",
"typescript": "^5.9.3"
}
}