| { |
| "name": "web", |
| "version": "0.0.0", |
| "private": true, |
| "license": "AGPL-3.0", |
| "type": "module", |
| "scripts": { |
| "dev": "vite dev", |
| "build": "vite build", |
| "serve": "vite preview", |
| "start:prod": "serve -s dist -l ${PORT:-3001}", |
| "start": "vite", |
| "test": "bun test", |
| "check-types": "vite build && tsc --noEmit", |
| "lint": "eslint src", |
| "generate-pwa-assets": "pwa-assets-generator" |
| }, |
| "dependencies": { |
| "@hookform/resolvers": "^5.2.2", |
| "@pram/ai": "workspace:*", |
| "@pram/api": "workspace:*", |
| "@pram/auth": "workspace:*", |
| "@pram/env": "workspace:*", |
| "@pram/ui": "workspace:*", |
| "@marsidev/react-turnstile": "^1.5.2", |
| "@tailwindcss/vite": "^4.2.2", |
| "@tanstack/react-form": "^1.28.0", |
| "@tanstack/react-query": "^5.90.12", |
| "@tanstack/react-router": "^1.168.22", |
| "@trpc/client": "catalog:", |
| "@trpc/server": "catalog:", |
| "@trpc/tanstack-react-query": "^11.16.0", |
| "better-auth": "catalog:", |
| "dotenv": "catalog:", |
| "flag-icons": "^7.5.0", |
| "lucide-react": "^1.8.0", |
| "next-themes": "catalog:", |
| "react": "^19.2.5", |
| "react-dom": "^19.2.5", |
| "react-joyride": "^3.1.0", |
| "recharts": "^3.8.1", |
| "sonner": "^2.0.7", |
| "vite-plugin-pwa": "^1.2.0", |
| "zod": "catalog:" |
| }, |
| "devDependencies": { |
| "@eslint/js": "^10.0.1", |
| "@pram/config": "workspace:*", |
| "@tanstack/react-query-devtools": "^5.91.1", |
| "@tanstack/react-router-devtools": "^1.166.13", |
| "@tanstack/router-plugin": "^1.167.22", |
| "@types/node": "^22.13.14", |
| "@types/react": "^19.2.14", |
| "@types/react-dom": "catalog:", |
| "@vite-pwa/assets-generator": "^1.0.2", |
| "@vitejs/plugin-react": "^6.0.1", |
| "eslint": "^10.4.0", |
| "postcss": "^8.5.10", |
| "serve": "^14.2.6", |
| "tailwindcss": "^4.2.2", |
| "typescript": "catalog:", |
| "typescript-eslint": "^8.59.4", |
| "vite": "^8.0.8" |
| } |
| } |
|
|