import { Hono } from 'hono'; import { cors } from 'hono/cors'; import { logger } from 'hono/logger'; import { serve } from '@hono/node-server'; import { auth } from './routes/auth'; import { savesRouter } from './routes/saves'; import { leaderboardRouter } from './routes/leaderboard'; const app = new Hono(); app.use('*', logger()); app.use('*', cors({ origin: process.env.CORS_ORIGIN ? process.env.CORS_ORIGIN.split(',') : ['http://localhost:5173', 'http://localhost:5174', 'http://localhost:5175', 'http://localhost:5178'], allowMethods: ['GET', 'POST', 'PUT', 'DELETE'], allowHeaders: ['Content-Type', 'Authorization'], })); app.get('/health', (c) => c.json({ status: 'ok', version: '0.1.0' })); app.route('/api/auth', auth); app.route('/api/saves', savesRouter); app.route('/api/leaderboard', leaderboardRouter); const port = Number(process.env.PORT) || 3001; console.log(`AI Tycoon API server starting on port ${port}...`); serve({ fetch: app.fetch, port });