Gecko
Definition
A gecko is a small to large Japanese lizard. However, in the Mozilla context Gecko refers to the browser layout engine.
What exactly is a layout engine?
In essence a layout engine is responsible for the following:
- Formatting content such as images, text, HTML, and CSS and displaying them on the screen. In other words, it is responsible for defining the placement rules for documents by parsing
them and formatting it accordingly in order to render it on the browser screen. It's functionality is so rich that it is even being used to layout the "Chrome" (i.e. menu bars, scroll bars etc.)
What Gecko is:
- open source free software (It was initially created by Netscape Corporation but now its development is stewarded by the Mozilla Foundation.)
- cross-platform (Windows, BSD, Linux and Mac OS X)
- Written in C++
- Gecko is used in almost all Mozilla based software.
- The 2nd most popular layout engine after Trident (IE's layout engine).
What Gecko supports
Gecko supports the following open internet standards:
- Hyptertext Markup Language (HTML) v4.0
- JavaScript 1.6
- eXtensible Markup Language (XML) v1.0
- Cascading Style Sheets (CSS)
- Document Object Model (DOM) Level 1 & 2
- eXtensible Hyptertext Markup Language (XHTML) v 1.1
- Mathematical Markup Language (MathML)
- Scalable Vector Graphics (SVG)
- Resource Description Framework (RDF)
When would one want to use Gecko?
Gecko solves a problem faced by developers looking to render html, css and most other web content in within their applications. Gecko provides a rich standards compliant interface, which relieves the developer of the heavy lifting with respect to page rendering. Developers simply need to embed Gecko within their apps to harness its power. Information relating to getting started with Gecko and embedding it within applications can be found within the Embedding Mozilla section of the Mozilla Development Center