Mercurial
view react_games/backend/server.ts @ 272:41a49c29a28f
polish JRPG conversation experience
Integrate desktop conversations into the utility panel, simplify the mobile frame, add modal destinations and a reusable Zenbu composer lab, and preserve explicit conversation resume behavior.
Co-authored-by: Copilot <[email protected]>
| author | MrJuneJune <me@mrjunejune.com> |
|---|---|
| date | Fri, 07 Aug 2026 16:05:29 -0700 |
| parents | fb9bcd3145cb |
| children |
line wrap: on
line source
import express from 'express'; import path from 'node:path'; import { createTodoRouter } from './routes/todo'; import { createWebRouter } from './routes/web'; import { createWorldeRouter } from './routes/wordle'; const app = express(); app.use(express.json()); const ROOT = process.cwd(); const PUBLIC_DIR = path.resolve(ROOT, 'public'); const DATA_FILE = path.resolve(ROOT, 'data', 'todos.json'); const PORT = Number(process.env.PORT) || 4000; const SPA_MOUNTS = [ { baseUrl: '/games', entryHtml: 'games/index.html' }, ]; app.use('/api/v1/todo', createTodoRouter(DATA_FILE)); app.use('/api/v1/wordle', createWorldeRouter()); app.use('/', createWebRouter(PUBLIC_DIR, SPA_MOUNTS)); app.listen(PORT, () => { console.log(`→ http://localhost:${PORT}`); });