{ "name": "webapp", "private": true, "sideEffects": false, "type": "module", "scripts": { "build": "remix vite:build", "dev": "node ./server.js", "lint": "eslint --ignore-path .gitignore --cache --cache-location ./node_modules/.cache/eslint .", "start": "remix-serve ./build/server/index.js", "typecheck": "tsc" }, "dependencies": { "@ai-sdk/openai": "^1.3.21", "@opentelemetry/api": "1.9.0", "@radix-ui/react-slot": "^1.2.3", "@recall/database": "workspace:*", "@recall/types": "workspace:*", "@remix-run/express": "2.16.7", "@remix-run/node": "2.1.0", "@remix-run/react": "2.16.7", "@remix-run/router": "^1.15.3", "@remix-run/serve": "2.16.7", "@remix-run/server-runtime": "2.16.7", "@remix-run/v1-meta": "^0.1.3", "@tailwindcss/container-queries": "^0.1.1", "@tailwindcss/postcss": "^4.1.7", "ai": "4.3.14", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", "compression": "^1.7.4", "cross-env": "^7.0.3", "express": "^4.18.1", "helix-ts": "^1.0.4", "isbot": "^4.1.0", "lucide-react": "^0.511.0", "morgan": "^1.10.0", "nanoid": "3.3.8", "jose": "^5.2.3", "non.geist": "^1.0.2", "posthog-js": "^1.116.6", "react": "^18.2.0", "react-dom": "^18.2.0", "remix-auth": "^3.6.0", "remix-auth-google": "^2.0.0", "remix-themes": "^1.3.1", "remix-typedjson": "0.3.1", "remix-utils": "^7.7.0", "tailwind-merge": "^2.6.0", "tailwind-scrollbar-hide": "^2.0.0", "tailwindcss-animate": "^1.0.7", "tailwindcss-textshadow": "^2.1.3", "tiny-invariant": "^1.3.1", "zod": "3.23.8", "zod-error": "1.5.0", "zod-validation-error": "^1.5.0" }, "devDependencies": { "@remix-run/dev": "2.16.7", "@remix-run/eslint-config": "2.16.7", "@remix-run/testing": "^2.16.7", "@tailwindcss/forms": "^0.5.10", "@tailwindcss/typography": "^0.5.16", "@tailwindcss/vite": "^4.1.7", "@types/compression": "^1.7.2", "@types/express": "^4.17.13", "@types/morgan": "^1.9.3", "@types/react": "^18.2.20", "@types/react-dom": "^18.2.7", "@typescript-eslint/eslint-plugin": "^6.7.4", "@typescript-eslint/parser": "^6.7.4", "autoprefixer": "^10.4.19", "css-loader": "^6.10.0", "esbuild": "^0.25.5", "eslint": "^8.24.0", "eslint-config-prettier": "^8.5.0", "eslint-import-resolver-typescript": "^3.6.1", "eslint-plugin-import": "^2.29.1", "eslint-plugin-jsx-a11y": "^6.7.1", "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.2", "eslint-plugin-turbo": "^2.0.4", "postcss": "^8.4.38", "postcss-import": "^16.0.1", "postcss-loader": "^8.1.1", "prettier": "^3.5.3", "prettier-plugin-tailwindcss": "^0.6.11", "tailwind-scrollbar": "^4.0.2", "tailwindcss": "4.1.7", "typescript": "5.8.3", "vite": "^6.0.0", "vite-tsconfig-paths": "^4.2.1" }, "engines": { "node": ">=20.0.0" } }