{ "name": "react-example", "private": true, "version": "0.0.0", "type": "module", "scripts": { "dev": "tsx server.ts", "build": "vite build && esbuild server.ts --bundle --platform=node --format=cjs --packages=external --sourcemap --outfile=dist/server.cjs", "start": "node dist/server.cjs", "clean": "rm -rf dist server.js", "lint": "tsc --noEmit && eslint src --max-warnings 0", "lint:fix": "eslint src --fix", "telemetry:report": "node tools/telemetry-report.mjs", "bake-maps": "tsx tools/bake-maps.ts", "bake-terrain": "tsx tools/bake-terrain.ts", "bake-cockpit": "tsx tools/bake-cockpit-components.ts", "test": "npm run test:voxel && npm run test:convergence && npm run test:cockpit && npm run test:multiplayer && npm run test:listeners", "test:voxel": "node --import tsx/esm src/game/voxelMesh.test.ts", "test:convergence": "node --import tsx/esm src/game/projectileConvergence.test.ts", "test:cockpit": "node --import tsx/esm src/game/cockpitValidation.test.ts", "test:multiplayer": "node --import tsx/esm src/game/MultiplayerRoom.test.ts", "test:listeners": "node --import tsx/esm src/hooks/multiplayer/listeners.test.ts" }, "dependencies": { "@colyseus/core": "^0.17.44", "@colyseus/schema": "~4.0.26", "@colyseus/sdk": "^0.17.43", "@colyseus/ws-transport": "^0.17.13", "@dimforge/rapier3d-compat": "^0.19.3", "@google/genai": "^2.4.0", "@tailwindcss/vite": "^4.1.14", "@takram/three-clouds": "^0.7.6", "@vitejs/plugin-react": "^5.0.4", "3d-tiles-renderer": "^0.4.28", "dotenv": "^17.2.3", "express": "^4.21.2", "lucide-react": "^0.546.0", "motion": "^12.23.24", "peerjs": "^1.5.5", "react": "^19.0.1", "react-dom": "^19.0.1", "sharp": "^0.35.2", "three": "^0.185.0", "vite": "^6.2.3", "ws": "^8.21.0" }, "devDependencies": { "@eslint/js": "^10.0.1", "@types/express": "^4.17.21", "@types/node": "^22.14.0", "@types/three": "^0.185.0", "@types/ws": "^8.18.1", "autoprefixer": "^10.4.21", "esbuild": "^0.25.0", "eslint": "^10.5.0", "eslint-plugin-react-hooks": "^7.1.1", "tailwindcss": "^4.1.14", "tsx": "^4.21.0", "typescript": "~5.8.2", "typescript-eslint": "^8.61.1" } }