{
  "name": "@sourcebot/web",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "dev": "next dev --turbopack",
    "build": "cross-env SKIP_ENV_VALIDATION=1 next build",
    "start": "next start",
    "lint": "cross-env SKIP_ENV_VALIDATION=1 eslint .",
    "test": "cross-env SKIP_ENV_VALIDATION=1 vitest",
    "dev:emails": "email dev --dir ./src/emails",
    "stripe:listen": "stripe listen --forward-to http://localhost:3000/api/stripe"
  },
  "dependencies": {
    "@ai-sdk/amazon-bedrock": "^3.0.22",
    "@ai-sdk/anthropic": "^2.0.17",
    "@ai-sdk/azure": "^2.0.32",
    "@ai-sdk/deepseek": "^1.0.18",
    "@ai-sdk/google": "^2.0.14",
    "@ai-sdk/google-vertex": "^3.0.27",
    "@ai-sdk/mistral": "^2.0.14",
    "@ai-sdk/openai": "^2.0.32",
    "@ai-sdk/openai-compatible": "^1.0.18",
    "@ai-sdk/react": "^2.0.45",
    "@ai-sdk/xai": "^2.0.20",
    "@auth/prisma-adapter": "^2.7.4",
    "@aws-sdk/credential-providers": "^3.890.0",
    "@codemirror/commands": "^6.6.0",
    "@codemirror/lang-cpp": "^6.0.2",
    "@codemirror/lang-css": "^6.3.0",
    "@codemirror/lang-go": "^6.0.1",
    "@codemirror/lang-html": "^6.4.9",
    "@codemirror/lang-java": "^6.0.1",
    "@codemirror/lang-javascript": "^6.2.2",
    "@codemirror/lang-json": "^6.0.1",
    "@codemirror/lang-less": "^6.0.2",
    "@codemirror/lang-liquid": "^6.2.2",
    "@codemirror/lang-markdown": "^6.2.5",
    "@codemirror/lang-php": "^6.0.1",
    "@codemirror/lang-python": "^6.1.6",
    "@codemirror/lang-rust": "^6.0.1",
    "@codemirror/lang-sass": "^6.0.2",
    "@codemirror/lang-sql": "^6.7.1",
    "@codemirror/lang-vue": "^0.1.3",
    "@codemirror/lang-wast": "^6.0.2",
    "@codemirror/lang-xml": "^6.1.0",
    "@codemirror/lang-yaml": "^6.1.2",
    "@codemirror/language": "^6.0.0",
    "@codemirror/language-data": "^6.5.1",
    "@codemirror/legacy-modes": "^6.4.2",
    "@codemirror/search": "^6.5.6",
    "@codemirror/state": "^6.4.1",
    "@codemirror/view": "^6.33.0",
    "@floating-ui/react": "^0.27.2",
    "@hookform/resolvers": "^3.9.0",
    "@iconify/react": "^5.1.0",
    "@iizukak/codemirror-lang-wgsl": "^0.3.0",
    "@openrouter/ai-sdk-provider": "^1.1.0",
    "@opentelemetry/api-logs": "^0.203.0",
    "@opentelemetry/instrumentation": "^0.203.0",
    "@opentelemetry/sdk-logs": "^0.203.0",
    "@radix-ui/react-accordion": "^1.2.11",
    "@radix-ui/react-alert-dialog": "^1.1.5",
    "@radix-ui/react-avatar": "^1.1.2",
    "@radix-ui/react-checkbox": "^1.3.2",
    "@radix-ui/react-collapsible": "^1.1.11",
    "@radix-ui/react-dialog": "^1.1.4",
    "@radix-ui/react-dropdown-menu": "^2.1.1",
    "@radix-ui/react-hover-card": "^1.1.6",
    "@radix-ui/react-icons": "^1.3.0",
    "@radix-ui/react-label": "^2.1.0",
    "@radix-ui/react-navigation-menu": "^1.2.0",
    "@radix-ui/react-popover": "^1.1.6",
    "@radix-ui/react-scroll-area": "^1.1.0",
    "@radix-ui/react-select": "^2.1.6",
    "@radix-ui/react-separator": "^1.1.0",
    "@radix-ui/react-slot": "^1.1.1",
    "@radix-ui/react-switch": "^1.2.4",
    "@radix-ui/react-tabs": "^1.1.2",
    "@radix-ui/react-toast": "^1.2.2",
    "@radix-ui/react-toggle": "^1.1.0",
    "@radix-ui/react-tooltip": "^1.1.4",
    "@react-email/components": "^0.0.33",
    "@react-email/render": "^1.0.5",
    "@replit/codemirror-lang-csharp": "^6.2.0",
    "@replit/codemirror-lang-nix": "^6.0.1",
    "@replit/codemirror-lang-solidity": "^6.0.2",
    "@replit/codemirror-lang-svelte": "^6.0.0",
    "@replit/codemirror-vim": "^6.2.1",
    "@sentry/nextjs": "^9",
    "@shopify/lang-jsonc": "^1.0.0",
    "@sourcebot/codemirror-lang-tcl": "^1.0.12",
    "@sourcebot/crypto": "workspace:*",
    "@sourcebot/db": "workspace:*",
    "@sourcebot/error": "workspace:*",
    "@sourcebot/logger": "workspace:*",
    "@sourcebot/schemas": "workspace:*",
    "@sourcebot/shared": "workspace:*",
    "@ssddanbrown/codemirror-lang-twig": "^1.0.0",
    "@stripe/react-stripe-js": "^3.1.1",
    "@stripe/stripe-js": "^5.6.0",
    "@t3-oss/env-nextjs": "^0.12.0",
    "@tailwindcss/typography": "^0.5.16",
    "@tanstack/react-query": "^5.53.3",
    "@tanstack/react-table": "^8.20.5",
    "@tanstack/react-virtual": "^3.10.8",
    "@uidotdev/usehooks": "^2.4.1",
    "@uiw/codemirror-themes": "^4.23.6",
    "@uiw/react-codemirror": "^4.23.0",
    "@vercel/otel": "^1.13.0",
    "@viz-js/lang-dot": "^1.0.4",
    "@xiechao/codemirror-lang-handlebars": "^1.0.4",
    "ai": "^5.0.45",
    "ajv": "^8.17.1",
    "bcryptjs": "^3.0.2",
    "chokidar": "^4.0.3",
    "class-variance-authority": "^0.7.0",
    "client-only": "^0.0.1",
    "clsx": "^2.1.1",
    "cm6-graphql": "^0.2.0",
    "cmdk": "1.0.0",
    "codemirror": "^5.65.3",
    "codemirror-json-schema": "^0.8.0",
    "codemirror-lang-brainfuck": "^0.1.0",
    "codemirror-lang-elixir": "^4.0.0",
    "codemirror-lang-hcl": "^0.0.0-beta.2",
    "codemirror-lang-j": "^0.1.1",
    "codemirror-lang-jq": "^1.0.0",
    "codemirror-lang-makefile": "^0.1.1",
    "codemirror-lang-mermaid": "^0.5.0",
    "codemirror-lang-perl": "^0.1.5-beta.6",
    "codemirror-lang-prolog": "^0.1.0",
    "codemirror-lang-r": "^0.1.1",
    "codemirror-lang-sparql": "^2.0.0",
    "codemirror-lang-spreadsheet": "^1.3.0",
    "codemirror-lang-zig": "^0.1.0",
    "date-fns": "^4.1.0",
    "embla-carousel-auto-scroll": "^8.3.0",
    "embla-carousel-react": "^8.3.0",
    "escape-string-regexp": "^5.0.0",
    "fuse.js": "^7.0.0",
    "google-auth-library": "^10.1.0",
    "graphql": "^16.9.0",
    "http-status-codes": "^2.3.0",
    "input-otp": "^1.4.2",
    "langfuse": "^3.38.4",
    "langfuse-vercel": "^3.38.4",
    "lucide-react": "^0.517.0",
    "micromatch": "^4.0.8",
    "next": "15.5.0",
    "next-auth": "^5.0.0-beta.25",
    "next-navigation-guard": "^0.2.0",
    "next-themes": "^0.3.0",
    "nodemailer": "^6.10.0",
    "octokit": "^4.1.3",
    "openai": "^4.98.0",
    "parse-diff": "^0.11.1",
    "posthog-js": "^1.161.5",
    "pretty-bytes": "^6.1.1",
    "psl": "^1.15.0",
    "react": "19.1.1",
    "react-device-detect": "^2.2.3",
    "react-dom": "19.1.1",
    "react-hook-form": "^7.53.0",
    "react-hotkeys-hook": "^4.5.1",
    "react-icons": "^5.3.0",
    "react-markdown": "^10.1.0",
    "react-resizable-panels": "^2.1.1",
    "recharts": "^2.15.3",
    "rehype-raw": "^7.0.0",
    "rehype-sanitize": "^6.0.0",
    "remark-gfm": "^4.0.1",
    "scroll-into-view-if-needed": "^3.1.0",
    "server-only": "^0.0.1",
    "sharp": "^0.33.5",
    "simple-git": "^3.27.0",
    "slate": "^0.117.0",
    "slate-dom": "^0.116.0",
    "slate-history": "^0.113.1",
    "slate-react": "^0.117.1",
    "strip-json-comments": "^5.0.1",
    "stripe": "^17.6.0",
    "tailwind-merge": "^2.5.2",
    "tailwindcss-animate": "^1.0.7",
    "usehooks-ts": "^3.1.0",
    "vscode-icons-js": "^11.6.1",
    "zod": "^3.25.74",
    "zod-to-json-schema": "^3.24.5"
  },
  "devDependencies": {
    "@eslint/eslintrc": "^3",
    "@tanstack/eslint-plugin-query": "^5.74.7",
    "@testing-library/dom": "^10.4.1",
    "@testing-library/react": "^16.3.0",
    "@types/micromatch": "^4.0.9",
    "@types/node": "^20",
    "@types/nodemailer": "^6.4.17",
    "@types/psl": "^1.1.3",
    "@types/react": "19.1.10",
    "@types/react-dom": "19.1.7",
    "@typescript-eslint/eslint-plugin": "^8.40.0",
    "@typescript-eslint/parser": "^8.40.0",
    "cross-env": "^7.0.3",
    "eslint": "^8",
    "eslint-config-next": "15.5.0",
    "eslint-plugin-react": "^7.37.5",
    "eslint-plugin-react-hooks": "^5.2.0",
    "jsdom": "^25.0.1",
    "npm-run-all": "^4.1.5",
    "postcss": "^8",
    "react-email": "3.0.3",
    "tailwindcss": "^3.4.1",
    "tsx": "^4.19.2",
    "typescript": "^5",
    "vite-tsconfig-paths": "^5.1.3",
    "vitest": "^2.1.5",
    "vitest-mock-extended": "^3.1.0"
  },
  "resolutions": {
    "@types/react": "19.1.10",
    "@types/react-dom": "19.1.7"
  }
}
