Skip to content

Resources & References

A curated collection of documentation, tools, and community resources for World of Warcraft addon development.


API Documentation

Tier 1 — Essential References

These are the primary sources every addon developer should bookmark.

Resource Description
World of Warcraft API Primary API reference — the definitive source for all WoW API functions
Events Reference Complete list of in-game events you can register and handle
C_ Namespace Index Index of all C_ API namespaces (C_Map, C_Item, C_Timer, etc.)
API Change Summaries Patch-by-patch tracking of API additions, removals, and changes
XML/UI Reference XML schema and UI widget definitions
Interface Customization Hub Central hub page linking to all UI/addon topics on the wiki

Tier 2 — Highly Useful

Supplementary references and beginner-friendly guides.

Resource Description
Wowpedia API Reference Backup API reference — sometimes has details or history not on warcraft.wiki.gg
Widget API (Wowpedia) Comprehensive widget method reference (Frame, Button, FontString, etc.)
Beginner's Guide to Addon Coding (Wowhead) Start-to-finish beginner tutorial covering Lua basics and addon structure
Addon Writing by Example (Wowhead) Hands-on tutorial building a simple addon step by step
Create a WoW Addon in 15 Minutes Quick-start guide for getting your first addon running fast
Events A-Z Full List Single-page alphabetical listing of all events

Official Blizzard Sources

Note

Blizzard does not provide standalone addon API documentation. The community wiki is the primary reference. The links below cover what Blizzard does publish.

Resource Description
Battle.net Developer Portal Official Web APIs (game data, profiles) — not addon/in-game APIs
10.0 UI Documentation Thread Blizzard's forum post on the 10.0 UI overhaul with migration guidance
Addon Releases with GitHub Actions Official forum guide on CI/CD pipelines for addon distribution

VS Code & Editor Tools

Resource Description
Lua (sumneko) Extension Lua language server with IntelliSense, diagnostics, and formatting
WoW API Extension Autocomplete and type annotations for all WoW API functions and events
WoW API Extension Source Source repository — useful for contributing or customizing definitions
WoW UI Schema XML schema definitions for WoW UI XML validation in your editor

Open Source Addon Examples

Study well-maintained addons to learn patterns and best practices.

Addon Description
OmniCC Cooldown count addon — clean example of hooking into Blizzard frames
Bagnon Inventory addon — demonstrates complex UI with multiple frame types
Total RP 3 Roleplay addon — large-scale addon with modules, localization, and saved variables

Community Resources

Resource Description
awesome-wow Curated list of addon development resources, libraries, and tools
wowprogramming.com Classic-era reference (WotLK/Cata) — still useful for fundamentals
AddOn Studio 2022 Full IDE for WoW addon development with visual designer

CI/CD & Distribution

BigWigs Packager

The BigWigs Packager is the community standard for automated addon releases. It handles:

  • Packaging your addon with correct TOC and file structure
  • Uploading to CurseForge, WoWInterface, and Wago
  • Generating changelogs from git history
  • Substituting version tags in your TOC file

GitHub Actions Workflow

A typical release workflow using BigWigs Packager:

name: Release
on:
  push:
    tags:
      - 'v*'

jobs:
  release:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0
      - uses: BigWigsMods/packager@v2
        env:
          CF_API_KEY: ${{ secrets.CF_API_KEY }}
          WOWI_API_TOKEN: ${{ secrets.WOWI_API_TOKEN }}
          WAGO_API_TOKEN: ${{ secrets.WAGO_API_TOKEN }}

Set your API tokens as repository secrets, then tag a release to trigger automated distribution.


Quick Reference: Where to Look

I need to... Go to
Look up an API function warcraft.wiki.gg API
Find an event name Events Reference
Check what changed in a patch API Change Summaries
Understand a widget method Widget API
Set up VS Code WoW API Extension + Lua LSP
Automate releases BigWigs Packager
Learn from examples OmniCC / Bagnon