Mozilla application framework

Last updated

The Mozilla application framework is a collection of cross-platform software components that make up the Mozilla applications. It was originally known as XPFE, an abbreviation of cross-platform front end. It was also known as XPToolkit. To avoid confusion, it is now referred to as the Mozilla application framework.

Contents

While similar to generic cross-platform application frameworks like GTK+, Qt and wxWidgets, the intent is to provide a subset of cross-platform functionality suitable for building network applications like web browsers, leveraging the cross-platform functionality already built into the Gecko layout engine.

The following are the various components of the framework:

Gecko
Gecko is a standards-based layout engine designed for performance and portability.
Necko
Necko provides an extensible API for several layers of networking from transport to presentation layers.
XUL
XUL is the basis of user interface. It is an application of XML that defines various user interface elements, mostly widgets, control elements, templates, etc. It is similar in many ways to HTML.
XBL
XBL allows one to define their own widget for use in XUL.
XPCOM
XPCOM is an object interface that allows interfacing between any programming language for which a binding has been developed
XPConnect
XPConnect is the binding between XPCOM and JavaScript.
XPInstall
XPInstall is a technology for installing small packages like extensions and themes into Mozilla applications in form of installation archives known as XPI.
Web services
Mozilla includes built-in support for popular web services standards, specifically; XML-RPC, SOAP (dropped since Gran Paradiso Alpha 7 [1] ), and WSDL as well as a simple XMLHttpRequest object similar to the one in Internet Explorer.
Others
The framework supports a number of open or common standards, including DTD, RDF, XSLT/XPath, MathML, SVG, JavaScript, SQL, LDAP, etc.

Applications that use the framework

See also

Related Research Articles

Gecko is a browser engine developed by Mozilla. It is used in the Firefox browser, the Thunderbird email client, and many other projects.

A browser engine is a core software component of every major web browser. The primary job of a browser engine is to transform HTML documents and other resources of a web page into an interactive visual representation on a user's device.

Cross Platform Component Object Model (XPCOM) is a cross-platform component model from Mozilla. It is similar to Component Object Model (COM),Common Object Request Broker Architecture (CORBA) and system object model (SOM). It features multiple language bindings and interface description language (IDL) descriptions; thus programmers can plug their custom functions into the framework and connect it with other components.

In computing, cross-platform software is computer software that is designed to work in several computing platforms. Some cross-platform software requires a separate build for each platform, but some can be directly run on any platform without special preparation, being written in an interpreted language or compiled to portable bytecode for which the interpreters or run-time packages are common or standard components of all supported platforms.

A computing platform, digital platform, or software platform is the infrastructure on which software is executed. While the individual components of a computing platform may be obfuscated under layers of abstraction, the summation of the required components comprise the computing platform.

XUL, which stands for XML User Interface Language, is a user interface markup language developed by Mozilla. XUL is an XML dialect for writing graphical user interfaces, enabling developers to write user interface elements in a manner similar to web pages.

<span class="mw-page-title-main">Interface description language</span> Computer language used to describe a software components interface

An interface description language or interface definition language (IDL) is a generic term for a language that lets a program or object written in one language communicate with another program written in an unknown language. IDLs are usually used to describe data types and interfaces in a language-independent way, for example, between those written in C++ and those written in Java.

<span class="mw-page-title-main">Netscape 6</span>

Netscape 6 is a discontinued Internet suite developed by Netscape Communications Corporation, and was the sixth major release of the Netscape series of browsers. It superseded Netscape Communicator (4.x), as the release of Netscape Communicator 5 was scrapped. Netscape 6 was the first browser of the Netscape line to be based on another source code: Mozilla Application Suite, an open-source software package from the Mozilla Foundation, which was created by Netscape in 1998.

XBL is an XML-based markup language for altering the behavior of XUL widgets. It was devised at Netscape in the late 1990s as an extension of XUL.

A user interface markup language is a markup language that renders and describes graphical user interfaces and controls. Many of these markup languages are dialects of XML and are dependent upon a pre-existing scripting language engine, usually a JavaScript engine, for rendering of controls and extra scriptability.

Netscape Plugin Application Programming Interface (NPAPI) is a deprecated application programming interface (API) for web browser plugins, initially developed for Netscape Navigator 2.0 in 1995 and subsequently adopted by other browsers.

Echo is a web application framework created by the company NextApp. The latest iteration, Echo3, allows writing applications in either server-side Java or client-side JavaScript. Server-side applications do not require developer knowledge of HTML, HTTP, or JavaScript. Client-side JavaScript-based applications do not require a server, but can communicate with one via AJAX.

qooxdoo Open-source Ajax web application framework

qooxdoo is an open-source Ajax web application framework. It is an LGPL- and/or EPL-licensed client-side and server-agnostic solution, and includes support for professional JavaScript development, a graphical user interface (GUI) toolkit and high-level client-server communication.

<span class="mw-page-title-main">Site-specific browser</span> Software application for browsing a particular website

A site-specific browser (SSB) is a software application that is dedicated to accessing pages from a single source (site) on a computer network such as the Internet or a private intranet. SSBs typically simplify the more complex functions of a web browser by excluding the menus, toolbars and browser GUI associated with functions that are external to the workings of a single site. These applications are typically started by a desktop icon which is usually a favicon.

ZK is an open-source Ajax Web application framework, written in Java, that enables creation of graphical user interfaces for Web applications with little required programming knowledge.

References

  1. "Bug 332174 - Drop SOAP support". Bugzilla@Mozilla. August 11, 2008. Retrieved April 15, 2016.