{ "name": "landvex-quixzoom-cms", "version": "1.0.0", "description": "Global Content Network for Landvex/QuiXzoom — Transcreation System", "type": "module", "scripts": { "dev": "tsx watch src/server.ts", "build": "tsc", "start": "node dist/server.js", "db:migrate": "tsx src/db/migrate.ts", "db:seed": "tsx src/db/seed.ts", "test": "vitest", "lint": "eslint src/", "translate:batch": "tsx src/scripts/batch-translate.ts", "content:sync": "tsx src/scripts/sync-content.ts", "seo:audit": "tsx src/scripts/seo-audit.ts" }, "dependencies": { "@fastify/cors": "^9.0.1", "@fastify/jwt": "^8.0.1", "@fastify/static": "^7.0.4", "better-sqlite3": "^11.5.0", "fastify": "^4.28.1", "fastify-type-provider-zod": "^2.0.0", "zod": "^3.23.8", "drizzle-orm": "^0.35.3", "drizzle-zod": "^0.5.1", "openai": "^4.68.4", "cheerio": "^1.0.0", "node-html-markdown": "^1.3.0", "slugify": "^1.6.6", "dotenv": "^16.4.5", "pino-pretty": "^11.3.0", "resend": "^4.0.0", "bullmq": "^5.21.2", "ioredis": "^5.4.1" }, "devDependencies": { "@types/better-sqlite3": "^7.6.11", "@types/node": "^22.8.6", "eslint": "^9.13.0", "tsx": "^4.19.2", "typescript": "^5.6.3", "vitest": "^2.1.4" } }