super-productivity/packages/super-sync-server/package.json
Johannes Millan 554cc09608 feat(supersync): add production Docker monitoring wrapper and tooling
Add docker-monitor.sh wrapper script for running monitoring tools in
production Docker containers, with automatic tsx installation.

Changes:
- docker-monitor.sh: Wrapper script for all monitoring commands
  - Supports basic monitoring (stats, usage, ops, logs)
  - Supports analysis commands (user-deep-dive, large-ops, etc)
  - Auto-installs tsx in container when needed
  - Handles report extraction from container
- Dockerfile: Include TypeScript source files for tsx execution
- package.json: Add docker:monitor npm scripts
- DOCKER-MONITORING.md: Production Docker monitoring guide

New npm scripts:
- npm run docker:monitor -- <command>: Run any monitoring command
- npm run docker:monitor:usage: Quick storage check
- npm run docker:monitor:all: Full monitoring suite
- npm run docker🐚 Interactive shell

Usage:
  ./scripts/docker-monitor.sh usage
  ./scripts/docker-monitor.sh analyze user-deep-dive --user 29
  ./scripts/docker-monitor.sh monitor-all --save
  ./scripts/docker-monitor.sh get-reports ./reports
2026-01-23 14:31:24 +01:00

59 lines
2.1 KiB
JSON

{
"name": "@super-productivity/super-sync-server",
"version": "1.0.0",
"description": "SuperSync server for Super Productivity",
"main": "dist/src/index.js",
"scripts": {
"build": "tsc",
"start": "node dist/src/index.js",
"dev": "nodemon --watch src --ext ts --exec ts-node src/index.ts",
"test": "vitest run",
"docker:build": "./scripts/build-and-push.sh",
"docker:deploy": "./scripts/deploy.sh",
"docker:deploy:build": "./scripts/deploy.sh --build",
"docker:backup": "./scripts/backup.sh",
"docker:logs": "docker logs supersync-server -f",
"docker:monitor": "./scripts/docker-monitor.sh",
"docker:monitor:usage": "./scripts/docker-monitor.sh usage",
"docker:monitor:all": "./scripts/docker-monitor.sh monitor-all --save",
"docker:shell": "./scripts/docker-monitor.sh shell",
"delete-user": "ts-node scripts/delete-user.ts",
"clear-data": "ts-node scripts/clear-data.ts",
"monitor": "node dist/scripts/monitor.js",
"monitor:dev": "tsx scripts/monitor.ts",
"analyze-storage": "tsx scripts/analyze-storage.ts",
"monitor:all": "tsx scripts/run-all-monitoring.ts",
"monitor:all:quick": "tsx scripts/run-all-monitoring.ts --quick",
"monitor:all:save": "tsx scripts/run-all-monitoring.ts --save"
},
"dependencies": {
"@fastify/cors": "^11.1.0",
"@fastify/helmet": "^13.0.2",
"@fastify/rate-limit": "^10.3.0",
"@fastify/static": "^8.3.0",
"@prisma/client": "5.22.0",
"@simplewebauthn/server": "^13.2.2",
"@simplewebauthn/types": "^12.0.0",
"@sp/shared-schema": "*",
"bcryptjs": "^3.0.3",
"dotenv": "^17.2.3",
"fastify": "^5.6.2",
"jsonwebtoken": "^9.0.2",
"nodemailer": "^7.0.12",
"uuidv7": "^1.1.0",
"zod": "^4.3.5"
},
"devDependencies": {
"@types/bcryptjs": "^2.4.6",
"@types/jsonwebtoken": "^9.0.10",
"@types/node": "^18.0.0",
"@types/nodemailer": "^7.0.5",
"@types/supertest": "^6.0.3",
"nodemon": "^3.1.11",
"prisma": "5.22.0",
"supertest": "^7.1.4",
"ts-node": "^10.9.1",
"typescript": "^5.0.0",
"vitest": "^3.2.4"
}
}