WebKit
Official git mirror of the WebKit repository, https://svn.webkit.org/repository/webkit, future canonical repository.
WebKit is the open-source browser engine that renders web pages in Safari, Mail, and other apps across Apple devices, Linux, and Windows.
WebKit is the open-source engine that renders web pages inside Safari, Mail, iBooks, and many other apps on iOS and macOS. In other words, when you open a website on an iPhone, this is the software that reads the page's code and paints it onto your screen. It is maintained as a collaborative project, and this repository serves as its official mirror on GitHub, though it is transitioning to become the canonical source.
Under the hood, this repo contains the full source code needed to compile the engine from scratch. The build process differs by platform: on a Mac you use Apple's Xcode tools to produce a debug or release build, while Linux distributions like GTK and WPE rely on CMake and Ninja. Windows builds are also supported, though they require following a separate guide. Once compiled, helper scripts let you launch Safari or a minimal browser so you can test your custom version against real websites.
The primary audience is developers who contribute to the browser engine itself or need to debug low-level rendering issues. For example, a Safari engineer investigating a CSS layout bug would modify the code here, rebuild, and launch the app with their changes applied. A platform team building an embedded Linux device might use the WPE port to create a lightweight browser for their hardware.
What is notable is the sheer scope of the project. It is a massive, cross-platform codebase spanning Apple's mobile and desktop operating systems, Linux environments, and Windows. This GitHub mirror reflects a broader shift in the project's infrastructure, moving away from its legacy Subversion (SVN) system toward Git, which makes it easier for the broader developer community to clone, branch, and submit contributions.
Where it fits
- Modify and rebuild the engine to debug a Safari CSS layout bug.
- Use the WPE port to build a lightweight embedded browser for a custom Linux device.
- Compile a custom debug build of WebKit to test rendering changes against real websites.