HOWTOs

HOWTOs are detailed documents describing "how to" accomplish something specific. Most of them will assume a basic understanding of the WoW scripting language and framework. For more information on the framework please refer to Project:Interface customization, AddOns, and World of Warcraft API.

This list may be incomplete; all HOWTOs are listed on Category:HOWTOs.

Getting Started

 * Introduction to Lua : Learn the basics of Lua.
 * Create a WoW AddOn in under 15 Minutes : Creating a Hello World addon.
 * Viewing Blizzard's interface code : The default UI is shipped as if it were a collection of dozens of addons, and this is how you see the source.
 * Using the BigWigs Packager with GitHub Actions : Automate your addon development workflow.

General Lua tutorials

 * Common Lua shortcuts : Commonly occurring uses of Lua logic evaluation short-cuts, method syntax and the global environment.
 * Hooking functions : Functions are first-class values in Lua, which allows you to override or extend the behavior of already declared functions.
 * Pattern matching : An overview of the regular expression features of Lua.

General Addon tutorials

 * Getting the current interface number : For use in .toc files.
 * Handling events : Creating, and managing event handler code.
 * Saving variables between game sessions : Description and examples of saving variables to disk.
 * Creating defaults : Creating default values in your addon's saved variables.
 * Creating key bindings : Creating user-configurable bindings, using the Bindings.xml, Lua, or RestrictedEnvironment APIs.
 * Localizing an addon : General techniques enabling localization.
 * Using the AddOn namespace : Sharing data privately between multiple Lua files in the same AddOn.

Using FrameXML

 * Creating a slash command : Creating and using slash command handlers.
 * Creating standard left-sliding frames : using the UIPanelLayout attributes to manage your frame's position.
 * Make frames closable with the Escape key : using UISpecialFrames to enable this behavior.
 * Creating simple pop-up dialog boxes: Using StaticPopup to display simple prompts.
 * Using the ColorPickerFrame : Invoking the default color picker.
 * Using UIDropDownMenu : Drop down boxes and menus using the FrameXML API.
 * Using the Interface Options Addons panel : Describes how to create an option panel that works with the default UI's Interface Options frame.

Widgets

 * Making draggable frames : Describes several methods to allow the user to move a frame.
 * Making resizable frames : Shows how to create a frame that can be resized using the mouse.