I found a little more information about XUL using Google, but not a lot. Most of the information and examples I found were old and obsolete. I also checked the official guides without any luck.

Sigourney Weaver

XUL (XML User Interface Language)

XUL (rhymes with “cool”) is Mozilla’s XML-based language. XUL provides the ability to create almost all the elements found in modern graphical interfaces like:

  • Input controls (textboxes, checkboxes)
  • Toolbars
  • Dialogs, scrollbars and more.

To learn XUL, it is recommended to have basic understanding of XML, CSS and HTML.

You can use XUL to build Firefox extensions, standalone XULRunner applications, remote XUL applications.

For more nformation, you can look here, https://developer.mozilla.org/en/XUL.

Gecko SDK

The Gecko SDK, also known as the XULRunner SDK, it is a collection of header files and tools used to develop general XPCOM components which add functionality to the existing platform.  XULRunner is a framework which can be used to run standalone or embedded applications based on the Mozilla framework.

The SDK 1.9.2 contains the following:

  • Header files for frozen interfaces, XPCOM functions, and NSPR functions (under include/)
  • Static utility libraries (under lib/)
  • Various tools (under bin/)

You can download Gecko-SDK and get information about it here, https://developer.mozilla.org/en/gecko_sdk


XPCOM is a cross platform component object model, similar to Microsoft COM.  Interfaces in XPCOM are defined in a dialect of IDL called XPIDL. XPCOM itself provides a set of core components and classes, including file and memory management, threads, basic data structures (strings, arrays and variants), etc. The majorities of XPCOM components are not part of this core set and is provided by other parts of the platform (e.g., Gecko or Necko) or by an application or even by an extension.

You can find more information here, https://developer.mozilla.org/en/xpcom

My next post will be a tutorial on how to create a toolbar with XUL.