feat: add admin panel with Discord OAuth and dashboard

Adds a React admin panel (panel/) with Discord OAuth2 login,
live dashboard via WebSocket, and settings/management pages.
Includes Docker build support, Vite proxy config for dev,
game_settings migration, and open-redirect protection on auth callback.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
syntaxbullet
2026-02-13 20:27:14 +01:00
parent 121c242168
commit 2381f073ba
30 changed files with 3626 additions and 11 deletions

View File

@@ -0,0 +1,13 @@
CREATE TABLE "game_settings" (
"id" text PRIMARY KEY DEFAULT 'default' NOT NULL,
"leveling" jsonb NOT NULL,
"economy" jsonb NOT NULL,
"inventory" jsonb NOT NULL,
"lootdrop" jsonb NOT NULL,
"trivia" jsonb NOT NULL,
"moderation" jsonb NOT NULL,
"commands" jsonb DEFAULT '{}'::jsonb,
"system" jsonb DEFAULT '{}'::jsonb,
"created_at" timestamp with time zone DEFAULT now() NOT NULL,
"updated_at" timestamp with time zone DEFAULT now() NOT NULL
);

File diff suppressed because it is too large Load Diff

View File

@@ -36,6 +36,13 @@
"when": 1770904612078,
"tag": "0004_bored_kat_farrell",
"breakpoints": true
},
{
"idx": 5,
"version": "7",
"when": 1771010684586,
"tag": "0005_wealthy_golden_guardian",
"breakpoints": true
}
]
}