Mercurial
view react_games/backend/server.ts @ 273:e02e2036ef84 default tip
add Layer 2 JRPG component system
Add reusable content and window modals, an isolated component sandbox, shared cyberpunk scroll areas, production-safe cache freshness, and server-rendered JRPG panel state.
Co-authored-by: Copilot <[email protected]>
| author | MrJuneJune <me@mrjunejune.com> |
|---|---|
| date | Sat, 08 Aug 2026 02:08:08 -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}`); });