{
  "name": "@cancerindex/api",
  "version": "0.1.0",
  "private": true,
  "type": "module",
  "description": "CancerIndex public API — Fastify 5, /v1, JSON envelope { data, sources, dataRelease }",
  "scripts": {
    "dev": "tsx watch src/server.ts",
    "start": "tsx src/server.ts",
    "build": "tsc -p tsconfig.json --noEmit",
    "typecheck": "tsc -p tsconfig.json --noEmit",
    "test": "vitest run --passWithNoTests",
    "create-key": "tsx scripts/create-key.ts"
  },
  "dependencies": {
    "@cancerindex/database": "workspace:*",
    "@cancerindex/ontology": "workspace:*",
    "@cancerindex/ranking": "workspace:*",
    "@cancerindex/shared": "workspace:*",
    "@fastify/compress": "^8.0.1",
    "@fastify/cors": "^11.0.0",
    "@fastify/etag": "^6.0.3",
    "@fastify/rate-limit": "^10.3.0",
    "@fastify/swagger": "^9.5.1",
    "@fastify/swagger-ui": "^5.2.3",
    "drizzle-orm": "^0.45.0",
    "fastify": "^5.5.0",
    "fastify-type-provider-zod": "^7.0.0",
    "pg-boss": "^12.0.0",
    "postgres": "^3.4.7",
    "zod": "^4.1.5"
  },
  "devDependencies": {
    "@types/node": "^24.0.0",
    "tsx": "^4.20.0",
    "typescript": "^5.9.3",
    "vitest": "^3.2.0"
  }
}
