implement foundation + room system (Plan 1 of 5)

Bun workspace monorepo with shared, server, client packages.
Server: Hono + @hono/node-ws, Drizzle + PostgreSQL, in-memory room manager
with WebSocket broadcasting, HTTP room creation, DB persistence layer.
Client: React 19 + Vite + Tailwind v4 + shadcn/ui, TanStack Router with
landing/display/host/player routes, Zustand store, WebSocket connection hook.
20 tests passing (room manager unit + WS integration).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-11 12:52:32 +01:00
parent cd993e032d
commit ff311b5fac
54 changed files with 3964 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
{
"name": "@celebrate-esc/client",
"version": "0.0.0",
"private": true,
"type": "module",
"scripts": {
"dev": "vite",
"build": "tsc -b && vite build",
"preview": "vite preview",
"typecheck": "tsc --noEmit"
},
"dependencies": {
"@celebrate-esc/shared": "workspace:*",
"@radix-ui/react-slot": "^1.2.4",
"@radix-ui/react-tabs": "^1.1.13",
"@tanstack/react-router": "latest",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"lucide-react": "^0.577.0",
"react": "latest",
"react-dom": "latest",
"tailwind-merge": "^3.5.0",
"zustand": "latest"
},
"devDependencies": {
"@tailwindcss/vite": "latest",
"@tanstack/router-plugin": "latest",
"@types/react": "latest",
"@types/react-dom": "latest",
"@vitejs/plugin-react": "latest",
"tailwindcss": "latest",
"typescript": "latest",
"vite": "latest"
}
}