{ "name": "tanstack.com", "private": true, "sideEffects": false, "repository": "https://github.com/TanStack/tanstack.com.git", "packageManager": "pnpm@10.33.0+sha512.10568bb4a6afb58c9eb3630da90cc9516417abebd3fabbe6739f0ae795728da1491e9db5a544c76ad8eb7570f5c4bb3d6c637b2cb41bfdcdb47fa823c8649319", "type": "module", "scripts": { "dev": "pnpm run with-env vite dev", "with-env": "dotenv -e .env.local", "dev:frontend": "pnpm run with-env vite dev", "build": "vite build", "start": "vite start", "start:prod": "pnpm run with-env node scripts/run-built-server.mjs", "lint": "oxlint --type-aware --disable-nested-config", "format": "oxfmt --write", "db:generate": "drizzle-kit generate", "db:migrate": "drizzle-kit migrate", "db:push": "drizzle-kit push", "db:studio": "drizzle-kit studio", "docs:webhooks:plan": "tsx scripts/sync-docs-webhooks.ts --dry-run", "docs:webhooks:sync": "tsx scripts/sync-docs-webhooks.ts", "husky": "pnpm run format && pnpm run test && pnpm run test:smoke", "test": "run-p test:tsc test:lint", "test:tsc": "tsc", "test:lint": "pnpm run lint", "test:smoke": "tsx tests/smoke.ts", "test:e2e": "playwright test", "prepare": "husky" }, "dependencies": { "@floating-ui/react": "^0.27.19", "@modelcontextprotocol/sdk": "^1.29.0", "@netlify/functions": "^5.1.5", "@netlify/vite-plugin-tanstack-start": "^1.3.2", "@observablehq/plot": "^0.6.17", "@octokit/graphql": "^9.0.3", "@radix-ui/react-dialog": "^1.1.15", "@radix-ui/react-dropdown-menu": "^2.1.16", "@radix-ui/react-toast": "^1.2.15", "@radix-ui/react-tooltip": "^1.2.8", "@react-three/drei": "^10.7.7", "@react-three/fiber": "^9.5.0", "@sentry/browser": "^10.47.0", "@sentry/node": "^10.47.0", "@sentry/tanstackstart-react": "^10.47.0", "@shopify/hydrogen-react": "^2026.4.0", "@tailwindcss/typography": "^0.5.19", "@tailwindcss/vite": "^4.2.2", "@tanstack/ai": "^0.10.2", "@tanstack/ai-anthropic": "^0.7.3", "@tanstack/ai-client": "^0.7.9", "@tanstack/ai-openai": "^0.7.4", "@tanstack/create": "^0.63.4", "@tanstack/pacer": "^0.20.1", "@tanstack/react-hotkeys": "^0.9.1", "@tanstack/react-pacer": "^0.21.1", "@tanstack/react-query": "^5.96.2", "@tanstack/react-router": "1.168.17", "@tanstack/react-router-devtools": "1.166.13", "@tanstack/react-router-ssr-query": "1.166.11", "@tanstack/react-start": "1.167.30", "@tanstack/react-start-server": "1.166.35", "@tanstack/react-table": "^8.21.3", "@types/d3": "^7.4.3", "@uploadthing/react": "^7.3.3", "@visx/hierarchy": "^3.12.0", "@vitejs/plugin-react": "^6.0.1", "@vitejs/plugin-rsc": "^0.5.24", "@webcontainer/api": "^1.6.1", "@xstate/react": "^6.1.0", "algoliasearch": "^5.50.0", "cheerio": "^1.2.0", "cmdk": "^1.1.1", "d3": "^7.9.0", "diff": "^8.0.4", "discord-interactions": "^4.4.0", "drizzle-orm": "^0.45.2", "gray-matter": "^4.0.3", "hast-util-is-element": "^3.0.0", "hast-util-to-string": "^3.0.1", "jszip": "^3.10.1", "lru-cache": "^11.2.7", "lucide-react": "^1.7.0", "maath": "^0.10.8", "match-sorter": "^8.2.0", "mermaid": "^11.14.0", "postgres": "^3.4.8", "react": "19.2.3", "react-colorful": "^5.6.1", "react-dom": "19.2.3", "react-easy-crop": "^5.5.7", "react-instantsearch": "^7.29.0", "rehype-autolink-headings": "^7.1.0", "rehype-callouts": "^2.1.2", "rehype-parse": "^9.0.1", "rehype-raw": "^7.0.0", "rehype-react": "^8.0.0", "rehype-slug": "^6.0.0", "remark-gfm": "^4.0.1", "remark-parse": "^11.0.0", "remark-rehype": "^11.1.2", "remove-markdown": "^0.6.3", "resend": "^6.10.0", "shiki": "^4.0.2", "tailwind-merge": "^3.5.0", "tar-stream": "^3.1.8", "three": "^0.183.2", "troika-three-text": "^0.52.4", "unified": "^11.0.5", "unist-util-visit": "^5.1.0", "uploadthing": "^7.7.4", "valibot": "^1.3.1", "vite-bundle-analyzer": "^1.3.6", "xstate": "^5.30.0", "zod": "^4.3.6", "zustand": "^5.0.12" }, "devDependencies": { "@content-collections/core": "^0.14.3", "@content-collections/vite": "^0.2.9", "@playwright/test": "^1.59.0", "@shikijs/transformers": "^4.0.2", "@tanstack/devtools-vite": "^0.6.0", "@tanstack/dom-vite": "0.1.0-alpha.7", "@tanstack/react-devtools": "^0.10.2", "@tanstack/react-query-devtools": "^5.99.0", "@types/hast": "^3.0.4", "@types/node": "^25.5.0", "@types/pg": "^8.20.0", "@types/react": "^19.2.14", "@types/react-dom": "19.2.3", "@types/remove-markdown": "^0.3.4", "@types/tar-stream": "^3.1.4", "@types/three": "^0.183.1", "dotenv-cli": "^11.0.0", "drizzle-kit": "^0.31.10", "esbuild": "^0.27.4", "husky": "^9.1.7", "npm-run-all": "^4.1.5", "oxfmt": "^0.43.0", "oxlint": "^1.58.0", "oxlint-tsgolint": "^0.19.0", "source-map-explorer": "^2.5.3", "tailwindcss": "^4.2.2", "tsx": "^4.21.0", "typescript": "^6.0.2", "vite": "^8.0.3" }, "engines": { "node": ">=22.0.0" }, "pnpm": { "overrides": { "cross-spawn": ">=6.0.6", "glob": ">=10.5.0", "node-forge": ">=1.3.2", "jws": ">=3.2.3", "qs": ">=6.14.1", "tunnel-rat>zustand": "5.0.12", "js-yaml": "^3.14.2", "minimatch@3.1.5>brace-expansion": "1.1.12", "minimatch@5.1.9>brace-expansion": "2.0.3", "minimatch@10.2.5>brace-expansion": "5.0.5" } } }