Search code examples
browserdefinition

What does it mean for a browser to be "webkit-based" or "gecko-based"?


I hear these terms bandied around quite a bit, especially when discussing feature compatibility... but what do they mean?


Solution

  • To add to the other answers, some things which differentiate the engines:

    • WebKit is built to be suitable for a variety of environments, including mobile and embedded systems.
    • Gecko includes an application-layer language based on web technologies called XUL which can be used for cross-platform GUI development (and is employed in Firefox, Thunderbird, and add-ons for both).
    • WebKit has gained popularity and helped to push a variety of new web standards, most notably the <canvas> drawing layer—now adopted by every major engine besides Trident (the IE engine).
    • Gecko probably bears the greatest responsibility for reigniting browser innovation, following a stagnation when Netscape lost the "browser wars" to IE.
    • While WebKit tends to have a speed advantage, Gecko has been making great strides in this area since version 3.0, as well as minimizing resource requirements (tending to require less memory over time than WebKit, depending on implementation).

    Edit: And a little history and some other browsers using the engines...

    Historically, WebKit is derived from KHTML, the engine in Konqueror. Some of the changes in WebKit have been back-ported to KHTML.

    Some other browsers (and applications and OSes) using WebKit include Epiphany (for *nix), OmniWeb (the first OS X browser, originally on NeXT), Adobe AIR (a runtime for using web technologies to develop "desktop" applications) and Palm's WebOS.

    Gecko began development at Netscape, with the plan to eventually integrate it into the Netscape browser. The Mozilla foundation was spun off from Netscape, and proceeded to develop Gecko for the Mozilla suite, now known as SeaMonkey. Firefox (originally Phoenix, then Firebird) was built as a lightweight Gecko browser without non-browser-related functionality in the Mozilla suite, and with a defined extension API for adding features.

    Some other browsers using Gecko include K-Meleon (for *nix), Flock (specialized for social networking) and Camino (Gecko in a native OS X Cocoa UI).