Comparison of browser engines
Appearance
This article compares browser engines.
Some of these engines have shared origins. For example, the WebKit engine was created by forking the KHTML engine in 2001.[1] Then, in 2013, a modified version of WebKit was officially forked as the Blink engine.[2]
General information
[edit]Engine | Status | Creators | License | Used in |
---|---|---|---|---|
WebKit | Stable | Apple, initially forked from KHTML | GNU LGPL, BSD-style | Safari browser, GNOME Web, Konqueror, Orion and all browsers for iOS[3] |
Blink | Stable | Google, initially forked from WebKit | GNU LGPL, BSD-style | All Chromium-based browsers |
Gecko | Stable | Mozilla | Mozilla Public | Firefox browser and its forks; SeaMonkey browser, Thunderbird email client |
Goanna | Stable | M. C. Straver,[4] initially forked from Gecko | Mozilla Public | Pale Moon, Basilisk, K-Meleon browsers |
NetSurf | Stable | NetSurf developers[5] | GNU GPLv2 | NetSurf browser |
Servo | Experimental[6] | Linux Foundation | Mozilla Public | Experimental browsers[7][8] |
LibWeb | Experimental; in pre-alpha[9] | Ladybird Browser Initiative[10] | 2-clause BSD | Ladybird browser[11] |
KHTML[12] | Discontinued | KDE | GNU LGPL | Formerly in the Konqueror browser[13] |
Tkhtml | Discontinued | Liem Bahneman[14] | BSD | Formerly in Html Viewer 3 browser |
Trident | Stable | Microsoft | Proprietary | Internet Explorer browser; Microsoft Edge IE mode |
Flow[15] | Experimental; in beta[15] | Ekioh[16] | Proprietary | Flow browser[17] |
EdgeHTML | Discontinued | Microsoft | Proprietary | Some UWP apps;[18] formerly Microsoft Edge browser[19] |
Presto | Discontinued | Opera | Proprietary | Opera Mini browser in Extreme/Mini mode, where contents arrive pre-rendered using this engine server-side[20] |
Tasman | Discontinued | Microsoft | Proprietary | Internet Explorer 5 Macintosh Edition |
Mariner | Discontinued | Netscape Communications | Proprietary | Netscape Communicator 5.0 |
Support
[edit]These tables summarize what stable engines support.
Operating systems
[edit]The operating systems that engines can run on without emulation.
Engine | Windows | macOS | Linux | BSD | Haiku | Android | iOS[3] |
---|---|---|---|---|---|---|---|
WebKit | Yes[note 1] | Yes | Yes | Yes | Yes | Yes | Yes |
Blink | Yes | Yes | Yes | Yes | Yes[note 2] | Yes | No |
Gecko | Yes | Yes | Yes | Yes | Yes | Yes | No |
Goanna | Yes | Yes[21] | Yes | Yes | No | No[22] | No |
NetSurf[23] | Yes | No | Yes | Yes | Yes | No | No |
Trident | Yes | No | No | No | No | No | No |
Image formats
[edit]Engine | JPEG | JPEG 2000 | JPEG XL | JPEG XL HDR | JPEG ISO HDR | JPEG Adobe HDR | GIF | BMP | PNG | APNG | SVG | WebP | AVIF | AVIF HDR | HEIC | HEIC HDR |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
WebKit | Yes | Yes | Yes | No[24][25] | No [24][25] | No [24][25] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No [24] |
Blink | Yes | No | No[26][27] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No |
Gecko | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No |
Goanna | Yes | No | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No |
NetSurf[28] | Yes | No | Yes | No | No | No | Yes | Yes | Yes | No | Yes | Yes | No | No | No | No |
Trident | Yes | No | No[29] | No | ? | ? | Yes | Yes | Yes | No | Partial | No | No[30] | No | No[31] | No |
Media formats
[edit]Engine | VP9 | AV1 | HEVC | H264 | Opus | FLAC |
---|---|---|---|---|---|---|
WebKit | Yes | Yes | Yes | Yes | ? | Yes |
Blink | Yes | Yes | Yes | Yes | Yes | Yes |
Gecko | Yes | Yes | No | Yes | Yes | Yes |
Goanna | Yes | Yes | No | Yes | Yes | Yes |
NetSurf | No | No | No | ? | No | ? |
Trident | No[32] | No[33] | Partial[32] | Yes[32] | No[34] | No[35] |
Typography
[edit]Engine | TTF | OTF | WOFF | WOFF2 | @font-face CSS rule | Ligatures (font-variant-ligatures CSS property) |
---|---|---|---|---|---|---|
WebKit | Yes | Yes | Yes | Yes | Yes | Yes |
Blink | Yes | Yes | Yes | Yes | Yes | Yes |
Gecko | Yes | Yes | Yes | Yes | Yes | Yes |
Goanna | Yes | Yes | Yes | Yes | Yes | Yes |
NetSurf | ? | ? | No | No | Partial[36] | No |
Trident | Partial[37] | Partial[37] | Yes[38] | No[39] | Yes[40] | No[41] |
Other items
[edit]Engine | Web Components | WebGL | WebGPU[42] | XHTML |
---|---|---|---|---|
WebKit | Partial[43] | Yes | No | Yes |
Blink | Yes | Yes | Yes | Yes |
Gecko | Yes | Yes | No | Yes |
Goanna | Yes[44] | Yes | No | Yes |
NetSurf | No | No | No | ? |
Trident | No[43] | Yes[45] | No[46] | Yes[47] |
See also
[edit]Notes
[edit]- ^ Must be built from source code.
- ^ Only available via QtWebEngine.
References
[edit]- ^ Paul Festa (14 January 2003). "Apple snub stings Mozilla". CNET Networks. Archived from the original on 25 October 2012. Retrieved 16 February 2017.
- ^ Bright, Peter (3 April 2013). "Google going its own way, forking WebKit rendering engine". Ars Technica. Conde Nast. Retrieved 9 March 2017.
- ^ a b "Open-sourcing Chrome on iOS!". 2017. Retrieved 26 April 2021.
Due to constraints of the iOS platform, all browsers must be built on top of the WebKit rendering engine.
- ^ M. C. Straver. "About Moonchild Productions". Archived from the original on 13 March 2017. Retrieved 19 April 2018.
- ^ "NetSurf Developer page". Netsurf-browser.org. Retrieved 7 February 2019.
- ^ "Servo engines written in Rust deliver memory safety and multithreading". Mozilla Research. Archived from the original on 11 June 2020. Retrieved 5 July 2020.
- ^ "A new browser for Magic Leap". 3 December 2018. Retrieved 20 May 2019.
- ^ "Firefox Reality for HoloLens 2". 21 May 2020. Retrieved 17 July 2020.
- ^ "Breadcrumbs/README.MD". 25 November 2024. Archived from the original on 30 March 2025. Retrieved 17 April 2025.
- ^ Kling, Andreas (1 July 2024). "Announcing the Ladybird Browser Initiative". ladybird.org.
- ^ Andreas Kling (September 2022). "Ladybird: A new cross-platform browser project".
Please note that we're still early in development, and many web platform features are missing or broken. It's going to take a long time before Ladybird is ready for day-to-day browsing.
- ^ "KHTML repository". GitHub. Retrieved 5 May 2023.
Removed for KF6, the 'kf5' branch contains the last maintained state.
- ^ "Port Konqueror away from KHTML". phabricator.kde.org. Retrieved 5 May 2023.
- ^ Mintert, Stefan (1995). "Weberknechte - WWW Dokumente komfortabel erstellen". iX (in German) (8). Heinz Heise.
- ^ a b "Flow Preview Builds". Ekioh. Retrieved 17 April 2025.
- ^ "About Ekioh". Ekioh.
- ^ "Flow Browser". Ekioh.
- ^ Mendelevich, Alan (14 May 2021). "You Think You Can Forget About the "Legacy" Microsoft Edge? Not So Fast!".
- ^ Mackie, Kurt (10 December 2018). "Microsoft Edge Browser To Get New Rendering Engine but EdgeHTML Continues". Redmond Mag. Retrieved 21 December 2019.
- ^ "Opera Browsers, Modes & Engines". dev.opera.com. 2 June 2015. Archived from the original on 14 June 2015.
- ^ "#1829 Restore Mac OS X code and buildability". 31 March 2022. Archived from the original on 6 May 2022.
- ^ "Pale Moon for Android is dead". forum.palemoon.org. April 2019. Retrieved 4 May 2021.
- ^ "NetSurf Downloads". NetSurf. 2009. Retrieved 17 April 2025.
{{cite web}}
: CS1 maint: url-status (link) - ^ a b c d "Bug 288705: [HDR] Enable SupportHDRDisplay feature by default". Webkit Team. 28 February 2025. Retrieved 21 March 2025.
- ^ a b c "Bug 290940: Gain mapped images do not show HDR contents". Webkit Team. 2 April 2025. Retrieved 10 April 2025.
- ^ "Google kills forthcoming JPEG XL image format in Chromium". The Register. 31 October 2022. Retrieved 7 August 2023.
- ^ Purdy, Kevin (17 April 2023). "FSF: Chrome's JPEG XL killing shows how the web works under browser hegemony". Ars Technica. Retrieved 16 February 2024.
- ^ "NetSurf". NetSurf. 28 December 2023. Retrieved 17 April 2025.
- ^ "JPEG XL image format". Can I use... Archived from the original on 1 April 2025. Retrieved 17 April 2025.
- ^ "AVIF image format". Can I use... Archived from the original on 5 April 2025. Retrieved 17 April 2025.
- ^ "HEIF/HEIC image format". Can I use... Archived from the original on 8 April 2025. Retrieved 17 April 2025.
- ^ a b c "Browser Video: Codecs, Formats & Hardware Acceleration". Helge Klein. 4 December 2017. Archived from the original on 25 March 2025. Retrieved 17 April 2025.
- ^ "AV1 video format". Can I use... Archived from the original on 4 April 2025. Retrieved 17 April 2025.
- ^ "Opus audio format". Can I use... Archived from the original on 9 April 2025. Retrieved 17 April 2025.
- ^ "FLAC audio format". Can I use... Archived from the original on 30 March 2025. Retrieved 17 April 2025.
- ^ "NetSurf 2.9". Change Log. NetSurf. Retrieved 17 April 2025.
{{cite web}}
: CS1 maint: url-status (link) - ^ a b "TTF/OTF - TrueType and OpenType font support". Can I use... Archived from the original on 17 January 2025. Retrieved 17 April 2025.
- ^ "WOFF - Web Open Font Format". Can I use... Archived from the original on 9 February 2025. Retrieved 17 April 2025.
- ^ "WOFF 2.0 - Web Open Font Format". Can I use... Archived from the original on 30 January 2025. Retrieved 17 April 2025.
- ^ "@font-face Web fonts". Can I use... Archived from the original on 21 March 2025. Retrieved 17 April 2025.
- ^ "CSS property: font-variant-ligatures". Can I use... Archived from the original on 28 December 2024. Retrieved 17 April 2025.
- ^ "WebGPU Implementation Status". GitHub. Retrieved 14 March 2024.
- ^ a b "Custom Elements (V1)". Can I use... Archived from the original on 2 March 2025. Retrieved 17 April 2025.
- ^ "v32.1.0 (2023-03-21)". Release notes for version 33 releases. Pale Moon. 21 March 2023. Archived from the original on 1 April 2025. Retrieved 17 April 2025.
- ^ "WebGL - 3D Canvas graphics". Can I use... Archived from the original on 5 July 2023. Retrieved 17 April 2025.
- ^ "WebGPU". Can I use... Archived from the original on 5 April 2025. Retrieved 17 April 2025.
- ^ "XHTML served as application/xhtml+xml". Can I use... Archived from the original on 12 December 2024. Retrieved 17 April 2025.