{ "name": "gregorlohaus.com", "version": "0.1.0", "private": true, "type": "module", "workspaces": ["packages/*"], "scripts": { "build": "bun run helix:build && next build", "helix:build": "bun run --cwd packages/codemirror-helix build", "build:ffmpeg-worker": "bun build node_modules/@ffmpeg/ffmpeg/dist/esm/worker.js --target browser --format esm --minify --outfile public/ffmpeg/worker.js", "check": "biome check .", "check:unsafe": "biome check --write --unsafe .", "check:write": "biome check --write .", "db:generate": "drizzle-kit generate", "db:migrate": "drizzle-kit migrate", "db:push": "drizzle-kit push", "db:studio": "drizzle-kit studio", "dev": "bun run helix:build && next dev --turbo", "preview": "next build && next start", "start": "next start", "typecheck": "tsc --noEmit", "test": "vitest --typecheck" }, "dependencies": { "@ai-sdk/openai": "^3.0.67", "@ai-sdk/react": "^3.0.195", "@clerk/nextjs": "^7.4.2", "@codemirror/autocomplete": "^6.20.3", "@codemirror/commands": "^6.10.3", "@codemirror/lang-markdown": "^6.5.0", "@codemirror/language": "^6.12.3", "@codemirror/search": "^6.5.6", "@codemirror/state": "^6.6.0", "@codemirror/view": "^6.43.1", "@electric-sql/pglite": "^0.4.6", "@ffmpeg/ffmpeg": "^0.12.15", "@ffmpeg/util": "^0.12.2", "@fortawesome/fontawesome-svg-core": "^7.2.0", "@fortawesome/free-solid-svg-icons": "^7.2.0", "@fortawesome/react-fontawesome": "^3.3.1", "@gsap/react": "^2.1.2", "@hookform/resolvers": "^5.4.0", "@mdx-js/loader": "^3.1.1", "@mdx-js/mdx": "^3.1.1", "@mdx-js/react": "^3.1.1", "@neondatabase/serverless": "^1.1.0", "@next/mdx": "^16.2.9", "@radix-ui/react-accordion": "^1.2.12", "@radix-ui/react-alert-dialog": "^1.1.15", "@radix-ui/react-aspect-ratio": "^1.1.8", "@radix-ui/react-avatar": "^1.1.11", "@radix-ui/react-checkbox": "^1.3.3", "@radix-ui/react-collapsible": "^1.1.12", "@radix-ui/react-context-menu": "^2.2.16", "@radix-ui/react-dialog": "^1.1.15", "@radix-ui/react-dropdown-menu": "^2.1.16", "@radix-ui/react-hover-card": "^1.1.15", "@radix-ui/react-label": "^2.1.8", "@radix-ui/react-menubar": "^1.1.16", "@radix-ui/react-navigation-menu": "^1.2.14", "@radix-ui/react-popover": "^1.1.15", "@radix-ui/react-progress": "^1.1.8", "@radix-ui/react-radio-group": "^1.3.8", "@radix-ui/react-scroll-area": "^1.2.10", "@radix-ui/react-select": "^2.2.6", "@radix-ui/react-separator": "^1.1.8", "@radix-ui/react-slider": "^1.3.6", "@radix-ui/react-slot": "^1.2.4", "@radix-ui/react-switch": "^1.2.6", "@radix-ui/react-tabs": "^1.1.13", "@radix-ui/react-toggle": "^1.1.10", "@radix-ui/react-toggle-group": "^1.1.11", "@radix-ui/react-tooltip": "^1.2.8", "@t3-oss/env-nextjs": "^0.13.11", "@tailwindcss/typography": "^0.5.19", "@tanstack/react-query": "^5.100.14", "@tanstack/react-query-next-experimental": "^5.100.14", "@testing-library/user-event": "^14.6.1", "@trpc/client": "^11.17.0", "@trpc/next": "^11.17.0", "@trpc/react-query": "^11.17.0", "@trpc/server": "^11.17.0", "@types/mdx": "^2.0.14", "@uiw/react-codemirror": "^4.25.10", "@uiw/react-md-editor": "^4.1.1", "codemirror-helix": "workspace:*", "@uploadthing/react": "^7.3.3", "@vercel/speed-insights": "^2.0.0", "ai": "^6.0.193", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", "cmdk": "^1.1.1", "date-fns": "^4.4.0", "date-format": "^4.0.14", "drizzle-orm": "^0.45.2", "drizzle-zod": "^0.8.3", "embla-carousel-react": "^8.6.0", "glazejs": "^2.0.1", "googleapis": "^173.0.0", "gray-matter": "^4.0.3", "gsap": "^3.15.0", "input-otp": "^1.4.2", "lucide-react": "^1.17.0", "next": "16.2.6", "next-mdx-remote": "^6.0.0", "next-themes": "^0.4.6", "postgres": "^3.4.9", "radix-ui": "^1.4.3", "react": "^19.2.6", "react-day-picker": "^10.0.1", "react-dom": "^19.2.6", "react-hook-form": "^7.77.0", "react-resizable-panels": "^4.11.2", "recharts": "3.8.1", "rehype-highlight": "^7.0.2", "rehype-raw": "^7.0.0", "remark-gfm": "^4.0.1", "server-only": "^0.0.1", "shadcn": "^4.10.0", "sonner": "^2.0.7", "superjson": "^2.2.6", "tailwind-merge": "^3.6.0", "tailwindcss-motion": "^1.1.1", "type-fest": "^5.7.0", "uploadthing": "^7.7.4", "vaul": "^1.1.2", "wavesurfer.js": "^7.12.8", "zod": "^4.4.3" }, "devDependencies": { "@biomejs/biome": "2.4.16", "@swc/jest": "^0.2.39", "@tailwindcss/postcss": "^4.3.0", "@testing-library/dom": "^10.4.1", "@testing-library/jest-dom": "^6.9.1", "@testing-library/react": "^16.3.2", "@types/jest": "^30.0.0", "@types/node": "^25.9.1", "@types/react": "^19.2.15", "@types/react-dom": "^19.2.3", "@vitejs/plugin-react": "^6.0.2", "@vitest/coverage-v8": "^4.1.8", "dotenv": "^17.4.2", "drizzle-kit": "^0.31.10", "jest": "^30.4.2", "jest-environment-jsdom": "^30.4.1", "jsdom": "^29.1.1", "next-router-mock": "^1.0.5", "pg-mem": "^3.0.14", "postcss": "^8.5.15", "tailwindcss": "^4.3.0", "ts-node": "^10.9.2", "tw-animate-css": "^1.4.0", "typescript": "^6.0.3", "vite-tsconfig-paths": "^6.1.1", "vitest": "^4.1.8" }, "ct3aMetadata": { "initVersion": "7.39.3" }, "packageManager": "bun" }