How the `dbcdata import` loader is structured and how to add a new game-data importer that uploads into a Chronicle dataset. Use when adding/modifying an Importer in scripts/dbcdata/cli, wiring a new DBC upload endpoint in api/gamedataapi, or migrating a game-data type (spells, items, talents, creatures) from compiled-in dbcmem to a database-backed dataset.
Chronicle's multi-tenant branding and CSS theming system. Covers the Branding struct, server-side CSS injection via Go templates, the ThemeEditor component, and how branding flows from database → API → HTML template → React components. Use when: modifying branding fields, adding theme knobs, changing how logos/colors/titles render, or debugging tenant vs site-level branding resolution.
AzerothCore ScriptAI hook system documentation. Covers the Observer pattern, creating new ScriptObject types, implementing hooks in ScriptMgr, naming conventions, and advanced patterns (filtering via references/bool returns, module-internal hooks). Use when: adding hooks to AzerothCore, creating modules, or working with ScriptMgr.
Multi-server build pipeline for Chronicle. Each WoW server (Turtle, Epoch, etc.) produces its own binary via Go build tags, its own Docker image, and its own Railway deployment. Covers the dbcmem driver-registration pattern, Dockerfile SERVER arg, CI matrix strategy, and how to add a new server.
Generate static Go code from WoW DBC files
Rankings and leaderboard system for Chronicle. Covers speedrun tracking (parser-side kill detection), leaderboard queries with version filtering, admin-configurable version requirements, and the semver encoding scheme for SQL-side comparison. Use when: adding ranking types, modifying speedrun rules, changing version requirements, or working with the leaderboard API/UI.
Guild Pages feature for Chronicle - customizable public pages for guilds with drag-drop panel editor
DPS simulation engine for Vanilla WoW (Turtle WoW) in TypeScript. Runs entirely in the browser. Covers combat formulas, spell/melee resolution, aura tracking, event-driven engine, the ApiDataProvider pattern, and EventsPanels integration. Use when: adding spells/rotations, modifying combat formulas, debugging sim output, building the sim UI page, or working with the panel bridge.