Mar 27, 2013 Release
LibReforgingInfo-1.0 provides information about the reforging applied to items, i.e. which stat was converted into which stat. LibReforgingInfo-1.0 API :GetReforgeID(itemString) Returns The reforging ID applied to the item. Arguments itemString Item string or item link :IsItemReforged(itemString) Returns true if the item is reforged, false otherwise. Arguments itemString Item string or item link :GetReforgedStatIDs(id) Returns Returns nil, nil if the item is not reforged. Otherwise, returns...


May 21, 2014 Release
LibItemUpgradeInfo-1.0 provides information about item upgrades applied to items. Functions :GetUpgradeID(itemString) Arguments itemString String - An itemLink or itemString denoting the item Returns upgradeID Number - The upgrade ID (possibly 0), or nil if the input is invalid or does not contain upgrade info :GetCurrentUpgrade(id) Returns the current upgrade level of the item, e.g. 1 for a 1/2 item. Arguments id Number - The upgrade ID of the item (obtained via GetUpgradeID()) Returns...


Jun 14, 2014 Mature
Allows easy creation of AceGUI EditBox widgets supporting autocompletion. They can be used as custom controls in AceConfig table entries as well, via the 'dialogControl' field (see AceConfig docs for more on the dialogControl option). Example mock-up (see the .lua file for explanations and additional notes): local AceGUI = LibStub("AceGUI-3.0") local Completing = LibStub("AceGUI-3.0-Completing-EditBox") Completing:Register ("ExampleGroupMembers", AUTOCOMPLETE_LIST_TEMPLATES.IN_GROUP)...


Jun 14, 2014 Mature
This is a variant of AceGUI-3.0's Frame container, with some changes: The read-only status text bar at the bottom is replaced with an edit box for input. Additional buttons can easily be added across the bottom, outside the control of the container/widget scheme. The ':EnableResize()' method of the (undocumented) Window container is also present here, but not (yet?) in Frame. Documentation of new methods and AceGUI-style callbacks are at the top of the .lua file. Comments, bugs, etc, should...


Dec 24, 2012 Beta
Lua Protocol Buffers A Protocal Buffer Implement that runs on World of Warcraft lua-pb is original by Neopallium/lua-pb Modified by tgic in order to work on wow


May 15, 2014 Release
UPDATE: Project cancelled due to issues with some API (e.g. CanComplainChat) requiring the full server name of the player, which this library would break. This library creates a chat filter for every single chat event. It calls Ambiguate(player, "none") to remove the server name from player names. The point of this library is to have its filters be the ones that run first, so that all subsequent filters from other addons receive the player name with the server trimmed off. This saves every...


Jan 14, 2014 Release
Timer bars with that extra sweetness. LibCandyBar-3.0 provides very simple timed bars, in the spirit of CandyBar-2.0. Documention: API


Oct 08, 2013 Release
LibSink-2.0 is a small library that you can throw in to easily get configuration options for your addon on where it should output any kind of messages. By default, LibSink-2.0 supports several addons as output "sinks"; Blizzard floating combat text, MSBT, SCT, Parrot, BCF. And if that's not enough it can also route your output to any ingame channel, like raid warning, party chat, say. Or just to a local chatframe, UIErrorsFrame, etc. In order to use LibSink-2.0 in your addon, you simply need...


Sep 09, 2013 Release
Provides several dropdown item types that can be used with AceGUI-3.0's AceGUIWidget-DropDown in order to style font, statusbar and sound-dropdowns properly, making it easier for the user to select the preferred item. LibDDI can also be used with AceConfig option tables with the 'select' type, using the itemControl property. The following item types are available: DDI-Font, DDI-Statusbar, DDI-Sound and DDI-RaidIcon. Pull LibDDI-1.0 in via your TOC/embeds.xml and make sure it's loaded after...


Sep 09, 2013 Release
A library to force common FCF (Floating Chat Frame) functions to create and use animations instead of using UIFrameFlash. You need this library if: Your addon hooks the `.AddMessage` functionality of a Chat Frame to modify the output. Your addon makes use of chat event filters. (ChatFrame_AddMessageEventFilter) What will this do for my addon? If your addon does make use of one of the above 2 features, it will prevent your addon being blamed for blocking talent changes. An in-depth explanation...


Sep 09, 2013 Release
LibDBIcon-1.0 is a small library you can throw in your LDB addon that will create a small minimap icon for you and nothing more. Simply get a reference to the library in your addon like so; local icon = LibStub("LibDBIcon-1.0") Then after you've registered your LDB object called "MyLDB", you can do: icon:Register("MyLDB", myLDB, savedVarTable) Where myLDB is a object reference to your LDB display and savedVarTable is a table where the library can store data like minimap position, radius and...


Jan 18, 2013 Alpha
A playground for AceTimer.

FZ Messaging Protocol

Dec 11, 2012 Planning
Allows addons to exchange arbitrary data between clients. The SendAddonMessage system provided by Blizzard can be inadequate for addon communication: It is limited to strings up to 255 characters. There is no equivalent system for communication with friends. This addon/library attempts to remedy the problem by providing a protocol that allows messages to be delivered to another clients efficiently and reliably, while surpassing the above limits.


May 03, 2013 Alpha
A library for tasks Tasks can be various things, for example "kill Nalak this week" or "use your tradeskill cooldown today". The library does only store (not between sessions) tasks and propagate changes to interested listeners, it does not create tasks on its own nor does it display them. Task sources For creating a task you should see the AddOrUpdateTask method, you can also remove tasks using the RemoveTask method. When ever a task is changed you should call the AddOrUpdateTask method...


Oct 17, 2012 Alpha
LibMapTileData allows to translate triples of (MapId, continentX, continentY) to (fractional) minimap texture indices. Also allows fetching the path ot a minimap texture for a given continent MapId and (integer) tile indices. Unfortunately this (currently) requires some hand-coded data, which is still missing for most of the continents.


Sep 04, 2010 Beta
LibRecursiveAnim-1.0 A library allows creating AnimationGroup that handles frame with all child frames as single object. API documentation Example: libAnim = LibStub:GetLibrary("LibRecursiveAnim-1.0"); local MyFrame1 = CreateFrame("Frame", nil, UIParent); MyFrame1:SetHeight(100); MyFrame1:SetWidth(100); MyFrame1:SetPoint("CENTER"); local Texture1 = MyFrame1:CreateTexture(); Texture1:SetAllPoints(); Texture1:SetTexture(0, 0, 0); local animationGroup =...
Render test: WoW Logo


Nov 05, 2013 Alpha
LibSVG is a library for rendering and, to some extent, manipulation of Scalable Vector Graphics in WoW. If you're just interested in trying out LibSVG without having to implement it in an addon first, try RenderMon! Element support: Objects: rect circle ellipse polygon polyline line (via polyline) path (A/a, C/c, L/l, M/m, S/s, Q/q, Z/z) Transformations Matrix(a,b,c,d,e,f) Translate(x[, y]) Scale(x[, y]) Rotate(angle[, cx, cy]) SkewX(angle) SkewY(angle) Styles: stroke (name of color or #rgb,...


Nov 05, 2013 Mature
LibXML-1.0 is a library for importing strict XML data into your programs. It's fully compatible with WoW client versions 2.0 through 5.4 See the API for documentation.


Nov 05, 2013 Release
LibMath is a collection of math functions that extends the Lua math library significantly. Functions math.avg (...) Returns the average (mean value) of the numbers passed. Usage: local avg = math.avg(1,2,3,4,5) assert(avg == 3) -- (1+2+3+4+5)/5 = 3 math.ceil (number[, significance]) Rounds a number up to the nearest integer value or the nearest multiple of significance. Usage: local rounded = math.ceil(4.51) assert(rounded == 5) local minutes = math.ceil(110, 60) assert(minutes == 2)...


Nov 28, 2010 Alpha
LibSQL is a library that incorporates a simple relational database (rdbms) into whatever awesome addon you're working on. For a quick guide, see the LibSQL Primer. For in-depth documenation, see Api/LibSQL-1.0 The SQL object is available in three variants: Conventional SQL access The standard way to communicate with an SQL server local db = LibSQL:New() -- make a table db:Execute("CREATE myTable (name STRING UNIQUE, level INTEGER, id INTEGER AUTO_INCREMENT)") -- insert some stuff...