WebKit was originally derived by Apple Inc. from the Konqueror browser�s KHTML software library for use as the engine of Mac OS X�s Safari web browser and has now been further developed by individuals from the KDE project, Apple Inc., Nokia, Google, Torch Mobile and others.[2]

[edit] Origins

The code that would become Webkit began in 1998 as the KDE project�s HTML layout engine KHTML and KDE's JavaScript engine (KJS). The name and project 'WebKit' were created in 2002 when Apple Inc. created a fork of KHTML and KJS. Apple developers explained in an e-mail to KDE developers[3] that these engines allowed easier development than other technologies by virtue of being small (less than 140,000 lines of code), cleanly designed and standards compliant. KHTML and KJS were ported to Mac OS X with the help of an adapter library and renamed WebCore and JavaScriptCore.[3] JavaScriptCore was announced in an e-mail to a KDE mailing list in June 2002, alongside the first release of Apple's changes.[4] 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 Apple's operating system to bundle WebKit, although it had already been bundled with a minor release of 10.2.

However, the exchange of code patches between the two branches of KHTML has previously been difficult and the code base diverged because both projects had different approaches in coding.[5] One of the reasons for this is that Apple worked on their version of KHTML for a year before making their fork public.

Despite this, the KDE project was able to incorporate some of these changes to improve KHTML's rendering speed and add features, including compliance with the Acid2 rendering test.[citation needed] Konqueror 3.5 passed the Acid2 test, which was released after Apple had opened its WebKit CVS and Bug Database.

According to Apple, some changes involved Mac OS X-specific features (e.g., Objective-C, KWQ, Mac OS X calls) that are absent in KDE's KHTML, which called for different development tactics.[6]