{ "name": "@monkeytype/backend", "version": "1.14.3", "private": true, "license": "GPL-3.0", "scripts": { "lint": "oxlint . --type-aware --type-check && oxlint -c .oxlintrc-plugin.json", "lint-fast": "oxlint .", "build": "npm run gen-docs && tsc --build", "watch": "tsc --build --watch", "clean": "tsc --build --clean", "ts-check": "tsc --noEmit", "start": "node ./dist/server.js", "test": "vitest run --project=unit", "integration-test": "vitest run --project=integration --project=integration-isolated", "test-coverage": "vitest run --coverage", "dev": "concurrently -p none \"tsx watch --clear-screen=false --inspect ./src/server.ts\" \"tsc --preserveWatchOutput --noEmit --watch\" \"esw src/ -w --ext .ts --cache --color\"", "docker-db-only": "docker compose -f docker/compose.db-only.yml up", "docker": "docker compose -f docker/compose.yml up", "gen-docs": "tsx scripts/openapi.ts dist/static/api/openapi.json && redocly build-docs -o dist/static/api/internal.html internal@v2 && redocly bundle -o dist/static/api/public.json public-filter && redocly build-docs -o dist/static/api/public.html public@v2" }, "dependencies": { "@date-fns/utc": "1.2.0", "@monkeytype/contracts": "workspace:*", "@monkeytype/funbox": "workspace:*", "@monkeytype/schemas": "workspace:*", "@monkeytype/util": "workspace:*", "@ts-rest/core": "3.52.1", "@ts-rest/express": "3.52.1", "@ts-rest/open-api": "3.52.1", "bcrypt": "5.1.1", "bullmq": "1.91.1", "chalk": "4.1.2", "cors": "2.8.5", "cron": "2.3.0", "date-fns": "3.6.0", "dotenv": "16.4.5", "etag": "1.8.1", "express": "5.2.0", "express-rate-limit": "7.5.1", "firebase-admin": "12.0.0", "helmet": "4.6.0", "ioredis": "4.28.5", "lru-cache": "7.10.1", "mjml": "4.15.0", "mongodb": "6.3.0", "mustache": "4.2.0", "nodemailer": "7.0.11", "object-hash": "3.0.0", "prom-client": "15.1.3", "rate-limiter-flexible": "5.0.3", "simple-git": "3.16.0", "string-similarity": "4.0.4", "swagger-stats": "0.99.7", "ua-parser-js": "0.7.33", "uuid": "10.0.0", "winston": "3.6.0", "zod": "3.23.8" }, "devDependencies": { "@monkeytype/oxlint-config": "workspace:*", "@monkeytype/typescript-config": "workspace:*", "@redocly/cli": "2.0.5", "@types/bcrypt": "5.0.2", "@types/cors": "2.8.12", "@types/cron": "1.7.3", "@types/express": "5.0.3", "@types/ioredis": "4.28.10", "@types/mjml": "4.7.4", "@types/mustache": "4.2.2", "@types/node": "24.9.1", "@types/nodemailer": "6.4.15", "@types/object-hash": "3.0.6", "@types/readline-sync": "1.4.8", "@types/string-similarity": "4.0.2", "@types/supertest": "6.0.3", "@types/swagger-stats": "0.95.11", "@types/ua-parser-js": "0.7.36", "@types/uuid": "10.0.0", "@vitest/coverage-v8": "4.0.8", "concurrently": "8.2.2", "openapi3-ts": "2.0.2", "oxlint": "1.33.0", "oxlint-tsgolint": "0.9.0", "readline-sync": "1.4.10", "supertest": "7.1.4", "testcontainers": "11.4.0", "tsx": "4.16.2", "typescript": "5.9.3", "vitest": "4.0.8" }, "engines": { "node": "24.11.0 || 22.21.0" } }