Files
botfights/server/package.json
T
DorianandClaude Opus 4.6 f6eb7d2845 feat: v5 — boxing poster fight cards, 12-char names, diverse mock bots
- Fight Card page: dramatic poster background with cross-hatch, spotlights,
  vignettes, corner brackets, scan lines; 3D VS orb with punch animation;
  selectable undercard with main event always pinned at top
- PosterSprite: high-quality 480px poster frame with 6-pass renderer
  (aura, glow, bevel, specular, particles); PixelGlove component
- 12-char bot name limit across all forms and server validation
- Mock bots: all 100 now have diverse archetypes (25 types), 25% human
  fighters; seedMockBots updates existing bots on restart
- Leaderboard: inline SpritePreview next to each bot name
- Nostr auth: persistent login, nsec copy button
- Wallet: NWC + Lightning Address, ranked fight flow
- Server: payments, ranked queue, customization endpoint

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08 10:33:30 +00:00

32 lines
801 B
JSON

{
"name": "server",
"private": true,
"type": "module",
"scripts": {
"dev": "tsx watch -r dotenv/config src/index.ts",
"build": "tsc",
"start": "node -r dotenv/config dist/index.js",
"seed": "tsx src/seed.ts",
"fight-loop": "tsx -r dotenv/config src/fight-loop-cli.ts",
"migrate": "tsx src/db/migrate.ts"
},
"dependencies": {
"@cashu/cashu-ts": "^3.5.0",
"@hono/node-server": "^1.14.1",
"better-sqlite3": "^11.9.1",
"chalk": "^5.6.2",
"dotenv": "^17.3.1",
"drizzle-orm": "^0.40.1",
"hono": "^4.7.6",
"nanoid": "^5.1.5",
"nostr-tools": "^2.23.3"
},
"devDependencies": {
"@types/better-sqlite3": "^7.6.13",
"@types/node": "^22.13.14",
"drizzle-kit": "^0.30.5",
"tsx": "^4.19.3",
"typescript": "^5.7.3"
}
}