{ "name": "whatsapp-channel-directory", "version": "1.0.0", "description": "Professional WhatsApp Channel Directory with Fastify, HTMX, and JSON file storage", "type": "module", "main": "dist/app.js", "scripts": { "dev": "tsx watch src/app.ts", "build": "tsc", "start": "node dist/app.js", "worker:scrape": "tsx watch workers/scrapeWorker.ts", "worker:update": "tsx watch workers/updateWorker.ts", "worker:cleanup": "tsx watch workers/cleanupWorker.ts", "docker:build": "docker build -t whatsapp-channel .", "docker:up": "docker compose up -d", "docker:down": "docker compose down" }, "dependencies": { "@fastify/cookie": "^9.3.1", "@fastify/cors": "^9.0.1", "@fastify/csrf-protection": "^6.4.0", "@fastify/helmet": "^11.1.1", "@fastify/rate-limit": "^9.1.0", "@fastify/session": "^10.9.0", "@fastify/static": "^7.0.3", "@fastify/view": "^9.1.0", "@hapi/iron": "^7.0.1", "argon2": "^0.41.0", "axios": "^1.7.7", "bullmq": "^5.15.0", "cheerio": "^1.0.0", "dotenv": "^16.4.5", "fastify": "^4.28.1", "groq-sdk": "^0.5.0", "ioredis": "^5.4.1", "js-yaml": "^4.1.0", "nanoid": "^5.0.7", "nanoid-dictionary": "^4.1.0", "nunjucks": "^3.2.4", "p-limit": "^6.1.0", "proper-lockfile": "^4.1.2", "uuid": "^10.0.0", "zod": "^3.23.8" }, "devDependencies": { "@types/node": "^22.5.0", "@types/nunjucks": "^3.2.6", "@types/proper-lockfile": "^4.1.3", "@types/uuid": "^10.0.0", "prettier": "^3.3.3", "tsx": "^4.19.0", "typescript": "^5.5.4" }, "engines": { "node": ">=20.0.0" } }