Application framework
Mozilla as an application framework
Mozilla is much more than a browser or mail client, it is an open source, fully cross-platform application development framework; it provides easy GUI functionality, networking API's, internationalization support, and more in an environment that is both easy to learn as well as to extend to meet your needs.
The Mozilla framework consists of the following technologies:
The Gecko Rendering Engine
Gecko is the highly standards-compliant rendering engine that forms the backbone of the Mozilla platform.
The XUL interface description language
XUL (XML User Interface) language is a revolutionary new concept in Graphical User Interface (GUI) development. It is a XML-based markup language similar in many ways to HTML, differs from HTML, however, in that it supports the full set of widgets you would expect from a RAD environment. It also allows you to develop your own widgets using XBL (eXtensible Bindings Language).
The XPCOM object interface
XPCOM (Cross-Platform Component Object Model) is Mozilla's object interface, allowing for interfaces between any programming language which has a binding. Supported languages at the moment include both Javascript and C++ and bindings for Python, Perl, and others are in the works. XPCOM allows you to access natively compiled C++ code libraries from your Javascript interface code, giving you the best of both worlds.