{ "name": "curfew", "version": "3.4.8", "private": true, "license": "PolyForm-Noncommercial-1.0.0", "type": "module", "packageManager": "bun@1.4.0", "scripts": { "dev": "dotenv -e .env.preview -- next dev", "local": "dotenv -e .env.local -- next dev", "build": "next build", "start": "next start", "lint": "eslint . --max-warnings=0", "typecheck": "tsc --noEmit", "test": "vitest run", "test:watch": "vitest", "migrate": "dotenv -e .env.preview -- bun run scripts/migrate.ts && dotenv -e .env.preview -- bun run scripts/sync-activities.ts", "sync:activities": "dotenv -e .env.preview -- bun run scripts/sync-activities.ts", "score": "dotenv -e .env.preview -- bun run scripts/score.ts", "verify": "dotenv -e .env.preview -- bun run scripts/verify.ts", "break-in": "dotenv -e .env.preview -- bun run scripts/break-in/run.ts", "break-in:local": "dotenv -e .env.local -- bun run scripts/break-in/run.ts", "local:migrate": "dotenv -e .env.local -- bun run scripts/migrate.ts && dotenv -e .env.local -- bun run scripts/sync-activities.ts", "local:seed": "dotenv -e .env.local -- bun run scripts/seed-local.ts", "migrate:production": "dotenv -e .env.production -- bun run scripts/migrate.ts && dotenv -e .env.production -- bun run scripts/sync-activities.ts", "auth:generate": "bun x @better-auth/cli generate", "simulate": "dotenv -e .env.local -- bun run scripts/simulate/run.ts", "check:money": "dotenv -e .env.local -- bun run scripts/check-money.ts", "check:deps": "bun run scripts/check-deps.ts", "check:actions": "bun run scripts/check-actions.ts", "check:decided": "bun run scripts/check-decided.ts", "check:member": "bun run scripts/check-member.ts", "check:cron": "bun run scripts/check-cron.ts", "check:streak": "dotenv -e .env.local -- bun run scripts/check-streak.ts", "check:offer": "dotenv -e .env.local -- bun run scripts/check-offer.ts", "fetch:font": "bun run scripts/fetch-font.ts", "make:icons": "bun run scripts/make-app-icons.ts", "check:signin": "bun run scripts/check-signin.ts", "check:shards": "bun run scripts/check-shards.ts", "check:dead": "knip", "publish:notice": "dotenv -e .env.preview -- bun run scripts/publish-notice.ts", "publish:notice:production": "dotenv -e .env.production -- bun run scripts/publish-notice.ts", "migrate:sleep": "dotenv -e .env.preview -- bun run scripts/migrate-sleep-confirm.ts", "migrate:sleep:production": "dotenv -e .env.production -- bun run scripts/migrate-sleep-confirm.ts", "schedule": "dotenv -e .env.preview -- bun run scripts/schedule-jobs.ts", "schedule:production": "dotenv -e .env.production -- bun run scripts/schedule-jobs.ts", "check:evidence": "dotenv -e .env.local -- bun run scripts/check-evidence.ts", "check:ceiling": "dotenv -e .env.local -- bun run scripts/check-ceiling.ts", "check:purge": "dotenv -e .env.local -- bun run scripts/check-purge.ts", "check:logic-version": "dotenv -e .env.local -- bun run scripts/check-logic-version.ts", "check:timezones": "dotenv -e .env.local -- bun run scripts/check-timezones.ts", "check:reminders": "dotenv -e .env.local -- bun run scripts/check-reminders.ts", "sim:push": "bun run scripts/simulate-push.ts", "check:push": "dotenv -e .env.preview -- bun run scripts/check-push.ts", "check:push:production": "dotenv -e .env.production -- bun run scripts/check-push.ts", "browser": "node scripts/browser/run.mjs", "check:cors": "dotenv -e .env.preview -- bun run scripts/check-r2-cors.ts", "check:cors:production": "dotenv -e .env.production -- bun run scripts/check-r2-cors.ts", "doc:activities": "bun run scripts/write-activities.ts", "check:activities": "bun run scripts/write-activities.ts --check", "sim:consistency": "bun run scripts/sim-consistency.ts", "check:tokens": "bun run scripts/check-tokens.ts" }, "overrides": { "postcss": "^8.5.26" }, "dependencies": { "@neondatabase/serverless": "^0.10.4", "better-auth": "^1.2.7", "drizzle-orm": "^0.45.2", "luxon": "^3.5.0", "next": "^15.1.6", "pg": "^8.13.1", "react": "^19.0.0", "react-dom": "^19.0.0", "resend": "^6.25.0", "web-push": "^3.6.7", "zod": "^3.24.1" }, "devDependencies": { "@eslint/js": "^10.0.1", "@next/eslint-plugin-next": "^16.3.4", "@playwright/test": "^1.62.1", "@types/luxon": "^3.4.2", "@types/node": "^22.10.7", "@types/pg": "^8.11.10", "@types/react": "^19.0.7", "@types/react-dom": "^19.0.3", "@types/web-push": "^3.6.4", "autoprefixer": "^10.4.20", "babel-plugin-react-compiler": "^1.0.0", "dotenv-cli": "^8.0.0", "eslint": "^10", "eslint-plugin-react-hooks": "^7", "globals": "^17.12.0", "knip": "^6.35.1", "playwright": "^1.62.1", "postcss": "^8.5.1", "postcss-load-config": "^6.0.1", "sharp": "^0.35.4", "tailwindcss": "^3.4.17", "typescript": "^5.7.3", "typescript-eslint": "^8", "vitest": "^5.0.0" } }