WebKit
By Apple
WebKit is an open-source web browser engine developed primarily by Apple, responsible for parsing HTML, CSS, and JavaScript and rendering the resulting visual page layout. It powers Apple's Safari browser and, due to Apple's App Store…
Definition
WebKit is an open-source web browser engine developed primarily by Apple, responsible for parsing HTML, CSS, and JavaScript and rendering the resulting visual page layout. It powers Apple's Safari browser and, due to Apple's App Store policy, is the mandatory underlying engine for every third-party web browser distributed on iOS and iPadOS. It is also used by some embedded and Linux desktop applications that need to render web content natively.
Overview
WebKit originated as a fork of the KHTML and KJS engines from the KDE project's Konqueror browser, which Apple adopted and heavily modified starting in 2001 to build Safari. Apple open-sourced WebKit in 2005, and it went on to be adopted by several other browsers and platforms over the following decade, including an earlier version of Google Chrome before Google forked it into Blink in 2013. Mechanically, WebKit is composed of several subsystems: WebCore handles HTML and CSS parsing and page layout, and JavaScriptCore executes JavaScript. Together these turn raw HTML and CSS bytes into the pixels a user sees, and manage how a page responds to user interaction, scripting, and network events. Apple continues to develop WebKit as an open-source project while also maintaining private extensions and integrations specific to Safari and Apple's operating systems, similar to how Google differentiates Chrome from Chromium. Within the browser landscape, WebKit is one of only three engine lineages with meaningful market presence, alongside Blink, which forked from it, and Gecko, developed independently by Mozilla. Since Blink and WebKit share common ancestry, they retain more architectural similarity to each other than either does to Gecko, even though they have diverged significantly since the 2013 split. WebKit's practical significance is amplified by Apple's iOS policy requiring every browser on the platform to use it, making WebKit's capabilities and limitations a hard ceiling for web functionality across the entire iOS browser market regardless of which app a user has installed. In practice, web developers test against WebKit specifically to ensure compatibility with Safari and, by extension, with every browser running on an iPhone or iPad. WebKit is also used outside of Safari in embedded contexts, such as macOS and Linux applications that need to render web content within a native app, similar to how Electron embeds Chromium. WebKit's main limitation, from developers' perspective, is that it has historically lagged behind Blink and Gecko in shipping certain newer web platform features, and because it is the sole allowed engine on iOS, a missing WebKit feature effectively blocks that capability for the entire iOS browser ecosystem until Apple implements it. Apple has faced regulatory pressure in some jurisdictions, notably the European Union, to allow alternative rendering engines on iOS, which if it takes effect broadly would end WebKit's decade-long status as the platform's only permitted browser engine. Such a change would let iOS users install browsers that genuinely differ in rendering behavior for the first time, reshaping how developers approach compatibility testing for Apple's mobile platform.
Key Features
- Combines WebCore for layout and JavaScriptCore for script execution
- Originated as a fork of the KDE project's KHTML and KJS engines
- Open-sourced by Apple in 2005 for broader industry adoption
- Powers Safari on macOS, iOS, and iPadOS
- Mandatory engine for all third-party browsers distributed on iOS
- Shares architectural ancestry with Google's Blink engine
- Embeddable in native macOS and Linux applications
- Maintained as an open-source project with Apple as primary steward