{ "name": "@o2o/site", "private": true, "version": "0.0.0", "type": "module", "scripts": { "dev": "vite --port=3001 --host=0.0.0.0", "build": "tsc --noEmit && eslint src scripts && npm run build:client && npm run build:prerender", "build:client": "vite build --outDir dist/client", "build:prerender": "vite build --ssr scripts/prerender.ts --outDir dist/prerender", "prerender": "npm run build:client && npm run build:prerender && node dist/prerender/prerender.js", "preview": "vite preview --port=3001 --outDir dist/client", "clean": "rm -rf dist out", "lint": "tsc --noEmit && eslint src scripts", "watch": "node scripts/watch-payloads.mjs", "serve": "node scripts/serve-sites.mjs", "test": "vitest run" }, "dependencies": { "@o2o/shared": "*", "@tailwindcss/vite": "^4.1.14", "clsx": "^2.1.1", "embla-carousel-react": "^8.6.0", "lucide-react": "^0.546.0", "react": "^19.0.1", "react-dom": "^19.0.1", "react-router": "^7.17.0", "tailwind-merge": "^3.6.0" }, "devDependencies": { "@types/node": "^22.14.0", "@types/react": "^19.2.17", "@types/react-dom": "^19.2.3", "@vitejs/plugin-react": "^5.0.4", "eslint": "^9.36.0", "eslint-plugin-react-hooks": "^7.1.1", "tailwindcss": "^4.1.14", "typescript": "~5.8.2", "typescript-eslint": "^8.45.0", "vite": "^6.2.3", "vitest": "^4.1.11" } }