Lua is available as a templating language on Fandom, helping to provide users with the ability to create more maintainable templates and to improve the performance of some of our slowest pages.

Lua is a different coding experience to basic wikitext templates, resembling a more 'traditional' programming syntax. It offers two key advantages: first and foremost is that logical functionality – 'if', 'else', and 'while' statements along with arrays and variable definition, for instance - is built into the Lua language, making the implementation of basic logic much easier in Lua than via MediaWiki's other methods. Second, because Lua is streamlined for logical operations, it performs better than its wikitext counterparts.

Lua (for wiki use) is not intended to replace JavaScript, CSS, or all wikitext templates.

Enabling and support

Lua is enabled by default on all wikis. When enabled, the general standard Lua libraries along with the specialized Scribunto libraries are also available. Fandom's implementation of Scribunto uses most standard features, but not all functions are supported; the differences are detailed in the reference manual.

For more background on the tool, read our introduction to Lua.

Lua module repository

Lua modules can also be loaded from the Fandom Open Source Library using require("Dev:ModuleName"), as opposed to require("Module:ModuleName")[1]. These "global modules" are available for re-use Fandom-wide and are described in more detail here.

Navbox Implementations

These are some Lua implementations for Navboxes:

Documentation and help

Lua documentation on the Fandom Open Source Library:

In addition to this documentation, we have a forum board set up here to ask questions and get help.

See also

Fandom Developers Wiki (

Further help and feedback


  1. User blog:Kirkburn/Technical Update: June 24, 2015
Community content is available under CC-BY-SA unless otherwise noted.