The Webkit Open Source Project

The next presentation that we had in the subject Case Studies II was given by Carlos García Campos, that he gave a speech about GNOME, where he collaborate with the community, but he is working in the company Igalia and from the beginning started on the Webkit team.

What is Webkit?

Webkit is a web content engine, started within Apple in 2001 as a fork of KHTML and KJS, mainly used on the web browser Konkeror of KDE. It was not released as FLOSS until 2005.

Carlos indicated that it is curious to think of Apple as a company that does not produce open source but it is not, and Webkit is an example.

It has evolved very quickly, because in 2007, added support for HTML5 and Webkit JavaScriptCore that is, coming from KJS, is rewritten to be a bytecode interpreter called SquirrelFish in 2008, to make it faster.

It is very important knows that Webkit itself is not a browser, but a platform therefore can not be compare with web browsers like Firefox or Google Chrome, because some use this platforms below.

Main objetives

  • Web Content Engine: using standards-based technologies such as HTML, CSS, JavaScript and the DOM.
  • Open Source: BSD-style and LGPL licenses.
  • Compatibility: regression testing to maintain compatibility.
  • Standards Compliance: regression testing to maintain standards compliance.
  • Stability: crashes, hangs and regressions are dealt with promptly.
  • Performance: maintaining and improving speed and memory use.
  • Security: security issues are fixed promptly.
  • Portability: desktop, mobile, embedded and other platforms.
  • Usability: good human interface design principles.
  • Hackability: trying to keep the code relatively easy to understand, using straightforward algorithms and data structures when possible and trying to write clear, maintainable code.
Apps using Webkit
There are a lot of applications that use Webkit actually:

Where is Webkit currently used?

And there are a devices using Webkit:

WebKit Architecture

Carlos told us that in Webkit architecture the application is out and there are a layer called Webkit, there two thing that are called Webkit, all the layers and the first layer.

  • WebKit: API layer.
  • WebCore: Rendering, layout, network, multimedia, a11y, etc.
  • JavaScriptCore: JavaScript engine, WTF(WebKit Templating Framework).
  • Platform: hooks to implement generic operations for every platform.

But Webkit don’t exists like an application, but needs a platform API (called port) to use the Webkit rendering motor. The most relevant ports are:

  • Apple Mac
  • Apple Windows
  • Chromium
  • GTK+
  • Qt
  • Cairo-based Windows
  • EFL
  • Windows CE

Some numbers of Webkit

  1. Total Source: 1.203.452
  2. Total Websites: 154.324
  3. Total Tools: 147.490
  4. Total commits: 26.621 – reviewed: 17.673 (66.38%)
  5. Commits per day (avg): 73
  6. Commits per month (avg): 2.217
  7. Bugs closed: 16.947
  8. More than 350 contributors (45 not committers)

In my opinion, this presentation was very interesting not only because it allowed me to know Webkit (I didn’t know completely nothing about it) but because it reveals the importance of this platform in the software world in general, not only for FLOSS. As we have seen Webkit is used in many applications and different systems.

Another fact that I have found very interesting is that the origin of Webkit was Apple, which is not highly regarded in the FLOSS world, yet Apple had been able to release Webkit for the benefit of large number of projects. It is curiously appreciate that much advertising is false and there are many big companies involved in some way with the FLOSS.





  1. #1 por read this el junio 30, 2012 - 4:43 am

    I like the valuable information you provide in your
    articles. I’ll bookmark your weblog and check again here regularly. I’m quite certain I will learn lots of new stuff right here! Best of luck for the next!

  1. Mozilla and Mozilla Hispano « FreeWorld


Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de

Estás comentando usando tu cuenta de Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: