Icon-warning-22x22.png This article refers to Google Code which will be shut down January 25, 2016.

WoWWiki Hosted AddOn Library Page

Dongle is a minimal addon framework that tries to provide those components that are necessary for the bulk of AddOns, without trying to be a full-featured abstraction of the World of Warcraft API. Rather than providing a java-like library such as Sea, Dongle provides a more pseudo-object oriented approach, allowing you to create a table with basic functionality included.

A basic Dongle addon to print "Hello World" to the default chat frame, waiting until the game is fully initialized looks like this:

HelloWorld = DongleStub("Dongle-1.0"):New("HelloWorld")

function HelloWorld:Enable()
  self:Print("Hello World!")

Dongle uses a few simple things to make things easier for both developers and users. The versioning stub included in all Dongle libraries is called DongleStub, and is based off Iriel's embedded framework design. Rather than include DongleStub as a separate file in the distribution, the core Dongle libraries have the latest version of DongleStub included or built into the file distribution. That means to use Dongle, you simply include Dongle.lua and put it in your .toc file.

Dongle systems

Dongle provides a number of simple systems which are included to make your life easier as a developer. They won't toast your bread, but they certainly help in each situation:

Dongle API

You can start exploring the Dongle API from the Core API page, or you can dive in to an individual system:

Help with Dongle

  • Dongle Discussion group on Google Groups [1]
  • #dongle on irc.freenode.net


Templates for starting an addon that uses Dongle.

  • Addon Template - This shows (basic) use of the slash command and database API

DongleStub based libraries

External links

Community content is available under CC-BY-SA unless otherwise noted.