- Add queue-based matchmaking with Elo-proximity and 10s timeout - Procedural sound engine (SFX, voice announcer, 4-track music) - Sprite system refactored into 6 archetypes (standard, lobster, sheep, cyborg, blob, tank) - 42+ fight choreographies with themed/generic/wild card selection - 4 KO finish styles, super-speed mode, hyperdetail close-ups - Auth routes, JoinBout page, bot profile with stats - 7-tier ranking system (Baby through Legend) - Arena and challenge system expansions Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
25 lines
744 B
TypeScript
25 lines
744 B
TypeScript
import { Hono } from 'hono'
|
|
import { cors } from 'hono/cors'
|
|
import { logger } from 'hono/logger'
|
|
import { botsRouter } from './routes/bots.js'
|
|
import { fightsRouter } from './routes/fights.js'
|
|
import { queueRouter } from './routes/queue.js'
|
|
import { authRouter } from './routes/auth.js'
|
|
|
|
export const app = new Hono()
|
|
|
|
app.onError((err, c) => {
|
|
console.error('[botfights] ERROR:', err.message, err.stack)
|
|
return c.json({ error: err.message }, 500)
|
|
})
|
|
|
|
app.use('*', logger())
|
|
app.use('/api/*', cors({ origin: '*' }))
|
|
|
|
app.get('/api/health', (c) => c.json({ status: 'ok', name: 'botfights' }))
|
|
|
|
app.route('/api/auth', authRouter)
|
|
app.route('/api/bots', botsRouter)
|
|
app.route('/api/fights', fightsRouter)
|
|
app.route('/api/queue', queueRouter)
|