{
  "name": "seo-insight",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "dev": "bash scripts/dev-all.sh",
    "dev:next": "next dev",
    "dev:analytics": "PORT=8787 bun --env-file=.env.local --conditions=react-server services/analytics/src/index.ts",
    "dev:stripe": "sh -c 'set -a; . ./.env.local; set +a; stripe listen --api-key \"$STRIPE_SECRET_KEY\" --forward-to localhost:3000/api/auth/stripe/webhook'",
    "dev:all": "bash scripts/dev-all.sh",
    "build": "next build",
    "start": "next start",
    "lint": "biome check",
    "format": "biome format --write",
    "db:generate": "drizzle-kit generate",
    "db:migrate": "bun run src/lib/db/migrate.ts",
    "db:migrate:test": "DATABASE_URL=postgresql://humperdoo@localhost:5432/seo_insight_test MIGRATION_DATABASE_URL=postgresql://humperdoo@localhost:5432/seo_insight_test bun --env-file=.env.local run src/lib/db/migrate.ts",
    "db:seed": "bun run src/lib/db/seed.ts",
    "db:push": "drizzle-kit push",
    "db:studio": "drizzle-kit studio",
    "spec:sync": "bun scripts/sync-spec-content.ts",
    "sync-flags": "bun run scripts/sync-flags.ts",
    "migrate:slugs": "MIGRATE_SLUGS=1 bun --env-file=.env.local run src/lib/keywords/migrate-slugs.ts",
    "backfill:onboarding": "bun --env-file=.env.local --conditions=react-server run scripts/backfill-onboarding.ts",
    "backfill:admin-roles": "bun --env-file=.env.local --conditions=react-server run scripts/backfill-admin-roles.ts",
    "gsc:partitions": "bun --env-file=.env.local --conditions=react-server run scripts/gsc-ensure-partitions.ts",
    "test": "DB_TESTS=1 DATABASE_URL=postgresql://humperdoo@localhost:5432/seo_insight_test bun --env-file=.env.local --conditions=react-server test",
    "test:db": "bun run test src/lib/db",
    "test:all": "bun run scripts/test-all.ts",
    "build:wasm": "wasm-pack build crates/import-core --release --target nodejs --out-dir ../../src/lib/backlink/import-core --out-name import_core",
    "build:wasm:semantic": "wasm-pack build crates/semantic-core --release --target nodejs --out-dir ../../src/lib/semantic/semantic-core --out-name semantic_core",
    "worker:gsc": "sh -c 'set -a; . ./.env.local; set +a; APP_URL=${APP_URL:-http://localhost:3000} cargo run -p gsc-worker'"
  },
  "dependencies": {
    "@aws-sdk/client-s3": "^3.1092.0",
    "@base-ui/react": "^1.6.0",
    "@better-auth/stripe": "^1.6.23",
    "@dnd-kit/core": "^6.3.1",
    "@dnd-kit/utilities": "^3.2.2",
    "@modelcontextprotocol/sdk": "^1.29.0",
    "@sentry/nextjs": "^10.67.0",
    "@tanstack/react-table": "^8.21.3",
    "better-auth": "1.6.23",
    "class-variance-authority": "^0.7.1",
    "clsx": "^2.1.1",
    "driver.js": "^1.8.0",
    "drizzle-orm": "^0.45.2",
    "import-core": "file:src/lib/backlink/import-core",
    "jszip": "^3.10.1",
    "lucide-react": "^1.25.0",
    "mcp-handler": "^1.1.0",
    "next": "16.2.11",
    "next-intl": "^4.13.3",
    "next-themes": "^0.4.6",
    "nuqs": "^2.9.1",
    "postgres": "^3.4.9",
    "qrcode.react": "^4.2.0",
    "radix-ui": "^1.6.4",
    "react": "19.2.8",
    "react-dom": "19.2.8",
    "react-markdown": "^10.1.0",
    "remark-gfm": "^4.0.1",
    "resend": "^6.18.0",
    "semantic-core": "file:src/lib/semantic/semantic-core",
    "server-only": "^0.0.1",
    "shadcn": "^4.13.1",
    "sonner": "^2.0.7",
    "stripe": "^22.3.2",
    "tailwind-merge": "^3.6.0",
    "tw-animate-css": "^1.4.0",
    "use-intl": "^4.13.3",
    "zod": "^4.4.3"
  },
  "overrides": {
    "kysely": "0.28.17",
    "typescript": "6.0.3",
    "zod": "4.4.3"
  },
  "devDependencies": {
    "@biomejs/biome": "2.5.5",
    "@tailwindcss/postcss": "^4.3.3",
    "@types/bun": "^1.3.14",
    "@types/node": "^26.1.1",
    "@types/react": "^19.2.17",
    "@types/react-dom": "^19.2.3",
    "babel-plugin-react-compiler": "1.0.0",
    "drizzle-kit": "^0.31.10",
    "flag-icons": "^7.5.0",
    "tailwindcss": "^4.3.3",
    "typescript": "^6.0.3"
  },
  "ignoreScripts": [
    "sharp",
    "unrs-resolver"
  ],
  "trustedDependencies": [
    "core-js",
    "msw",
    "sharp",
    "unrs-resolver"
  ]
}
