Installed Base Profit

WebKit is a layout engine software designed to allow web browsers to render web pages. It powers Googles Chrome web browser versions up to 27, and Apples Safari web browser applications. As of November 2012 it has the most market share of any layout engine at over 40% of the browser market share[4]—ahead of both the Trident engine used by Internet Explorer, and the Gecko engine used by Firefox.

It is also used as the basis for the experimental browser included with the Amazon Kindle e-book reader, as well as the default browser in the Apple iOS, Android, BlackBerry 10, and Tizen mobile operating systems. WebKits C++ API provides a set of classes to display web content in windows, and implements browser features such as following links when clicked by the user, managing a back-forward list, and managing a history of pages recently visited.

WebKits HTML and JavaScript code originally began as a fork of the KHTML and KJS libraries from KDE,[5] and has now been further developed by individuals from KDE, Apple, Google, Nokia, Bitstream, BlackBerry, Igalia, and others.[6] OS X, Windows, GNU/Linux, and some other Unix-like operating systems are supported by the project.[7] On April 3rd, 2013 Google announced that it had forked WebCore, a component of WebKit to be used in future versions of Google Chrome and Opera.[8][9]

WebKits WebCore and JavaScriptCore components are available under the GNU Lesser General Public License, and the rest of WebKit is available under a BSD-form license.[10] As of March 7, 2013, Webkit is a trademark of Apple, registered with the U.S. Patent and Trademark Office.[11]

The code that would become WebKit began in 1998 as the KDEs HTML layout engine KHTML and KDEs JavaScript engine (KJS). The WebKit project was started within Apple by Don Melton on 25 June 2001[12] as a fork of KHTML and KJS. Melton explained in an e-mail to KDE developers[2] that KHTML and KJS allowed easier development than other available technologies by virtue of being small (fewer than 140,000 lines of code), cleanly designed and standards-compliant. KHTML and KJS were ported to OS X with the help of an adapter library and renamed WebCore and JavaScriptCore.[2] JavaScriptCore was announced in an e-mail to a KDE mailing list in June 2002, alongside the first release of Apples changes.[13] WebCore was announced at the Macworld Expo in January 2003 by Apple CEO Steve Jobs with the release of the Safari web browser. JavaScriptCore was first included with Mac OS X v10.2 as a private framework which Apple used within their Sherlock application, while WebCore debuted with the first beta of Safari. Mac OS X v10.3 was the first major release of Apples operating system to bundle WebKit, although it had already been bundled with a minor release of 10.2.

According to Apple, some changes involved OS X–specific features (e.g., Objective-C, KWQ,[14] OS X calls) that are absent in KDEs KHTML, which called for different development tactics.[15]

During the publicized divorce period, KDE developer Kurt Pfeifle (pipitas) posted an article claiming KHTML developers had managed to backport many (but not all) Safari improvements from WebCore to KHTML, and they always appreciated the improvements coming from Apple and still do so. The article also noted Apple had begun to contact KHTML developers about discussing how to improve the mutual relationship and ways of future cooperation.[19] In fact, the KDE project was able to incorporate some of these changes to improve KHTMLs rendering speed and add features, including compliance with the Acid2 rendering test.[20]

Since the story of the fork appeared in news, Apple has released changes of the source code of WebKit fork in a CVS repository.[21] Since the transfer of the sourcecode into a public CVS repository, Apple and KHTML developers have had increasing collaboration. Many KHTML developers have become reviewers and submitters for WebKit SVN repository.

The WebKit team had also reversed many Apple-specific changes in the original WebKit code base and implemented platform-specific abstraction layers to make committing the core rendering code to other platforms significantly easier.[22]

In July 2007, the Ars Technica website published an article reporting that the KDE team would move from KHTML to WebKit.[23] Instead, after several years of integration, KDE Development Platform version 4.5.0 was released in August 2010 with support for both WebKit and KHTML, and development of KHTML continues.[24]

On June 7, 2005, Safari developer Dave Hyatt announced on his weblog that Apple was open-sourcing WebKit (previously, only WebCore and JavaScriptCore were open source) and opening up access to WebKits CVS tree and the bug Database tool.[21] This was announced at Apples Worldwide Developers Conference 2005 by Apple Senior Vice President of Software Engineering Bertrand Serlet.