Files
ukmesh/backend/package.json

50 lines
1.9 KiB
JSON

{
"name": "meshcore-analytics-backend",
"version": "1.0.0",
"private": true,
"type": "module",
"scripts": {
"build": "tsc",
"dev": "tsx watch src/index.ts",
"spam:recompute": "node dist/tools/recomputeSpamSuspects.js",
"spam:messages": "node dist/tools/recomputeSpamMessages.js",
"db:migrate": "node dist/tools/migrate.js",
"stats:backfill-rollups": "node dist/tools/backfillStatsRollups.js",
"stats:seed-chart-snapshot": "node dist/tools/seedStatsChartSnapshot.js",
"db:lifecycle": "node dist/tools/dataLifecycle.js",
"owner-auth:inventory": "node dist/tools/inventoryOwnerAuthorization.js",
"analysis:cleanup-orphans": "node dist/tools/cleanupOrphanedAnalysisRuns.js",
"bench:decode": "tsx src/tools/benchmarkPacketDecode.ts",
"load:realtime": "tsx src/tools/loadRealtime.ts",
"test": "node --import tsx --test $(find src -name '*.test.ts' ! -name '*.integration.test.ts' -print)",
"test:analysis-integration": "node --import tsx --test src/analysis/runState.integration.test.ts",
"test:ingest-integration": "node --import tsx --test src/db/packetBatch.integration.test.ts",
"typecheck": "tsc --noEmit",
"contract:generate": "tsx src/tools/generateOpenApi.ts",
"contract:check": "tsx src/tools/generateOpenApi.ts --check",
"start": "node dist/index.js"
},
"dependencies": {
"@michaelhart/meshcore-decoder": "^0.3.0",
"compression": "^1.7.4",
"cors": "^2.8.5",
"express": "^4.19.2",
"express-rate-limit": "^7.4.1",
"ioredis": "^5.4.1",
"mqtt": "^5.10.1",
"pg": "^8.13.1",
"prom-client": "^15.1.3",
"ws": "^8.18.0"
},
"devDependencies": {
"@types/compression": "^1.7.5",
"@types/cors": "^2.8.17",
"@types/express": "^4.17.21",
"@types/node": "^20.17.6",
"@types/pg": "^8.11.10",
"@types/ws": "^8.5.12",
"tsx": "^4.19.1",
"typescript": "^5.6.3"
}
}