MosswartOverlord/static
Erik adb9d5feab feat: major cleanup + death alerts + idle detection + Discord webhooks
Cleanup:
- Removed 109 stale asset files from static/assets/ (was 122, now 13)
- Removed static/v2/ entirely (was duplicate of root assets)
- Removed dead dashboard code: DashboardView, Layout, GlobalStats,
  CharacterCard, CharacterGrid, VitalBar, TabContainer, CombatTab,
  RaresTab, MapTab, InventoryTab, global.css, MapTransformContext
- Removed recharts dependency (425KB chunk eliminated)
- CSS reduced from 17KB to 10KB
- Added deploy-frontend.sh script for one-command build+deploy
- Updated CLAUDE.md with combat_stats, share_*, dungeon_map events
  and React frontend architecture

Death alerts (frontend + backend):
- Frontend: DeathNotification component with red banner + sawtooth
  sound when vitae goes from 0 to >0
- Backend: detects vitae transition in vitals handler, sends Discord
  webhook to #aclog with "☠️ CHARACTER died! (vitae: X%)"
- Rate-limited: max 1 Discord alert per character per 5 minutes

Idle detection (backend):
- Background task runs every 60 seconds
- Detects: vt_state "default"/"idle" OR kph=0 while in combat/hunt
- Sends Discord webhook: "⚠️ CHARACTER appears idle (state: X, KPH: 0)"
- Auto-clears alert when character becomes active again
- No duplicate alerts for same idle period

Discord integration:
- DISCORD_ACLOG_WEBHOOK env var for webhook URL
- Used by both death alerts and idle detection
- Graceful fallback when not configured

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-14 16:32:14 +02:00
..
assets feat: major cleanup + death alerts + idle detection + Discord webhooks 2026-04-14 16:32:14 +02:00
classic feat: v2 React frontend is now primary at / 2026-04-14 12:17:23 +02:00
icons added inventory, updated DB 2025-06-10 19:21:21 +00:00
acmap.png feat: switch to UtilityBelt's acmap.png (2048x2048) 2026-04-08 12:43:22 +02:00
admin.html feat: add app-level authentication with login, session cookies, and admin panel 2026-04-10 19:45:08 +02:00
debug.html Debug and inventory 2025-06-19 17:46:19 +00:00
dereth.png Overlord sees all 2025-04-29 22:23:34 +00:00
dereth_highres.png feat: swap map to high-res color-corrected Dereth map 2026-04-08 12:41:47 +02:00
dungeon_tiles.json fix: detect PNG vs BMP format in dungeon tiles 2026-04-08 15:18:09 +02:00
favicon.ico added favicon 2025-05-09 23:31:01 +00:00
index.html feat: major cleanup + death alerts + idle detection + Discord webhooks 2026-04-14 16:32:14 +02:00
inventory.html feat: move column toggles into table headers 2026-04-09 10:12:01 +02:00
inventory.js feat: compute base item values by reversing active spell buffs 2026-04-09 12:31:39 +02:00
login.html Fix login page: allow /icons/ through auth middleware, match color scheme to AC logo 2026-04-10 20:07:06 +02:00
prismatic-taper-icon.png Major overhaul of db -> hypertable conversion, updated GUI, added inventory 2025-06-08 20:51:06 +00:00
script.js fix(combat): show offense + defense damage by element in grid 2026-04-12 10:13:47 +02:00
style-ac.css Extract createWindow helper to deduplicate window setup code 2026-02-26 09:26:06 +00:00
style.css feat: combat stats backend + frontend (Mag-Tools style) 2026-04-12 09:42:11 +02:00
suitbuilder.css Add suitbuilder UI improvements for locked slots and suit summary 2026-02-05 19:11:37 +00:00
suitbuilder.html feat: add Healing and Summoning cantrip constraints to suitbuilder 2026-03-07 20:57:11 +00:00
suitbuilder.js feat: add Healing and Summoning cantrip constraints to suitbuilder 2026-03-07 20:57:11 +00:00
sw.js feat: v2 React frontend is now primary at / 2026-04-14 12:17:23 +02:00