Comparison of browser engines

Last updated

This article compares browser engines, especially actively-developed ones. [lower-alpha 1]

Contents

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

EngineStatus [lower-alpha 1] Steward License Embedded in
WebKit Active Apple GNU LGPL, BSD-style Safari browser, plus all browsers for iOS; [3] GNOME Web, Konqueror
Blink Active Google GNU LGPL, BSD-style Google Chrome and all other Chromium-based browsers, including Microsoft Edge, Brave, Vivaldi, Samsung Internet and Opera [4]
Gecko Active Mozilla Mozilla Public Firefox browser and Thunderbird email client
Goanna [lower-alpha 2] ActiveM. C. Straver [6] Mozilla Public Pale Moon, Basilisk and K-Meleon browsers
Trident [lower-alpha 3] Maintained Microsoft Proprietary Internet Explorer browser
EdgeHTML Maintained Microsoft Proprietary some UWP apps; [8] formerly in the Edge browser [9]
Presto [lower-alpha 4] Maintained Opera Proprietary server-side for low-end phones; [lower-alpha 4] formerly in the Opera browser
Flow [13] MaintainedEkioh [14] Proprietary Flow browser [15]
Servo [lower-alpha 5] Maintained Linux Foundation Mozilla Public experimental browsers [17] [18]
NetSurf [lower-alpha 6] Maintained hobbyists [21] GNU GPLv2 NetSurf browser [22]
LibWeb [lower-alpha 7] Maintained hobbyists [24] 2-clause BSD Ladybird browser [23]
KHTML [25] Discontinued KDE GNU LGPL formerly in the Konqueror browser [26]

Support

These tables summarize what actively-developed [lower-alpha 1] engines support. [lower-alpha 8]

Operating systems

The operating systems that engines can run on without emulation.

Engine Windows macOS iOS [3] Android Linux BSD Haiku
WebKit Yes [lower-roman 1] YesYesYesYesYesYes
Blink YesYesNoYesYesYesYes [lower-roman 2]
Gecko YesYesNoYesYesYesNo
Goanna YesYes [27] NoNo [28] YesYesNo

Notes

  1. Must be built from source code.
  2. Only available through QtWebEngine.

Image formats

Engine JPEG GIF PNG SVG WebP AVIF
WebKit YesYesYesYesYesYes
Blink [lower-alpha 8] YesYesYesYesYesYes
Gecko YesYesYesYesYesYes
Goanna YesYesYesYesYesNo

Media formats

EngineVP9AV1HEVCH264+AACOpusFLAC
WebKit YesYesYesYesDependsYes
Blink YesYesYesYesYesYes
Gecko YesYesNoYesYesYes
Goanna YesYesNoYesYesYes

Typography

EngineTTFOTFWOFFWOFF2@font-faceLigatures
WebKit YesYesYesYesYesYes
Blink YesYesYesYesYesYes
Gecko YesYesYesYesYesYes
Goanna YesYesYesYesYesYes

Other items

Engine Web Components WebGL WebGPU [31] XHTML
WebKit YesYesNot yetYes
Blink YesYesYes [32] Yes
Gecko YesYesNot yetYes
Goanna Yes [33] YesNoYes

See also

Notes

  1. 1 2 3 Active status means that new Web standards continue to be added to the engine, which properly renders the vast majority of websites, including multimedia. However, Maintained status can be as minimal as ensuring the engine code still compiles. Discontinued is when the engine code is abandoned.
  2. Goanna is a fork of an old version of Gecko. It has less web compatibility, but still renders the vast majority of websites. [5]
  3. Internet Explorer continues to receive security updates, [7] which means Trident (a.k.a. MSHTML) is still maintained.
  4. 1 2 In 2013, Opera replaced the Presto engine with Blink for its flagship desktop and mobile browser. But it still has a special niche usage of Presto as a server-side renderer for the Opera Mini browser, which provides a limited browsing capability on low-end phones. [10] [11] Presto was last updated in 2015, [12] but is considered Maintained here because of its usage.
  5. Servo has the goal of being a viable alternative to the major engines. However, there is still a lot of work to be done, [16] so it is Maintained status here.
  6. NetSurf does not fully support HTML5 or other recent Web standards, [19] [20] which means it cannot work properly on YouTube, Gmail, and many other popular websites. Thus it does not merit Active status per this article's criteria.
  7. As of September 2022, LibWeb will require "years of development" before it is a full-featured engine suitable for real browsing. [23] Thus it does not merit Active status per this article's criteria.

Related Research Articles

A browser engine is a core software component of every major web browser. The primary job of a browser engine is to transform HTML documents and other resources of a web page into an interactive visual representation on a user's device.

<span class="mw-page-title-main">KHTML</span> Discontinued web browser engine

KHTML is a discontinued browser engine that was developed by the KDE project. It originated as the engine of the Konqueror browser in the late 1990s, but active development ceased in 2016. It was officially discontinued in 2023.

<span class="mw-page-title-main">Browser wars</span> Competition between web browsing applications for share of worldwide usage

A browser war is a competition for dominance in the usage share of web browsers. The "first browser war" (1995–2001) consisted of Internet Explorer and Netscape Navigator, and the "second browser war" (2004-2017) between Internet Explorer, Firefox, and Google Chrome.

Presto was the browser engine of the Opera web browser from the release of Opera 7 on 28 January 2003, until the release of Opera 15 on 2 July 2013, at which time Opera switched to using the Blink engine that was originally created for Chromium. Presto was also used to power the Opera Mini and Opera Mobile browsers.

WebKit is a browser engine primarily used in Apple's Safari web browser, as well as all web browsers on iOS and iPadOS. WebKit is also used by the PlayStation consoles starting with the PS3, the Tizen mobile operating systems, the Amazon Kindle e-book reader, Nintendo consoles starting with the 3DS Internet Browser, and the discontinued BlackBerry Browser.

This is a comparison of both historical and current web browsers based on developer, engine, platform(s), releases, license, and cost.

A browser extension is a software module for customizing a web browser. Browsers typically allow users to install a variety of extensions, including user interface modifications, cookie management, ad blocking, and the custom scripting and styling of web pages.

<span class="mw-page-title-main">Site-specific browser</span> Software application for browsing a particular website

A site-specific browser (SSB) is a software application that is dedicated to accessing pages from a single source (site) on a computer network such as the Internet or a private intranet. SSBs typically simplify the more complex functions of a web browser by excluding the menus, toolbars and browser GUI associated with functions that are external to the workings of a single site. These applications are typically started by a desktop icon which is usually a favicon.

V8 is a JavaScript and WebAssembly engine developed by Google for its Chrome browser. V8 is free and open-source software that is part of the Chromium project and also used separately in non-browser contexts, notably the Node.js runtime system.

<span class="mw-page-title-main">Chromium (web browser)</span> Open-source web browser project

Chromium is a free and open-source web browser project, primarily developed and maintained by Google. It is a widely-used codebase, providing the vast majority of code for Google Chrome and many other browsers, including Microsoft Edge, Samsung Internet, and Opera. The code is also used by several app frameworks.

<span class="mw-page-title-main">WebGL</span> JavaScript bindings for OpenGL in web browsers

WebGL is a JavaScript API for rendering interactive 2D and 3D graphics within any compatible web browser without the use of plug-ins. WebGL is fully integrated with other web standards, allowing GPU-accelerated usage of physics, image processing, and effects in the HTML canvas. WebGL elements can be mixed with other HTML elements and composited with other parts of the page or page background.

A lightweight web browser is a web browser that sacrifices some of the features of a mainstream web browser in order to reduce the consumption of system resources, and especially to minimize the memory footprint.

HTML audio is a subject of the HTML specification, incorporating audio input, playback, and synthesis, all in the browser.

<span class="mw-page-title-main">Chromium Embedded Framework</span> Free and open-source software framework

The Chromium Embedded Framework (CEF) is an open-source software framework for embedding a Chromium web browser within another application. This enables developers to add web browsing functionality to their application, as well as the ability to use HTML, CSS, and JavaScript to create the application's user interface.

Media Source Extensions (MSE) is a W3C specification that allows JavaScript to send byte streams to media codecs within web browsers that support HTML video and audio. Among other possible uses, this allows the implementation of client-side prefetching and buffering code for streaming media entirely in JavaScript. It is compatible with, but should not be confused with, the Encrypted Media Extensions (EME) specification, and neither requires the use of the other, although many EME implementations are only capable of decrypting media data provided via MSE.

<span class="mw-page-title-main">Microsoft Edge</span> Web browser developed by Microsoft

Microsoft Edge is a proprietary cross-platform web browser created by Microsoft. Released in 2015 as part of Windows 10 and Xbox One, it was initially built with Microsoft's own proprietary browser engine, EdgeHTML, and their Chakra JavaScript engine. Later on, it was ported to Android and iOS as a fork of Google's Chromium open-source project. In late 2018, Microsoft announced it would completely rebuild Edge as a Chromium-based browser with Blink and V8 engines, which allowed the browser to be ported to macOS. The new Edge was publicly released in January 2020, and on Xbox platforms in 2021. Microsoft has since terminated security support for the original browser. Edge is also available on older Windows versions until early 2023), as well as Linux.

uBlock Origin Web browser extension

uBlock Origin is a free and open-source browser extension for content filtering, including ad blocking. The extension is available for Chrome, Chromium, Edge, Firefox, Brave, Opera, Pale Moon, as well as versions of Safari before 13. uBlock Origin has received praise from technology websites and is reported to be much less memory-intensive than other extensions with similar functionality. uBlock Origin's stated purpose is to give users the means to enforce their own (content-filtering) choices.

JPEG XL is a royalty-free raster-graphics file format that supports both lossy and lossless compression. It is designed to outperform existing raster formats and thus become their universal replacement.

References

  1. Paul Festa (14 January 2003). "Apple snub stings Mozilla". CNET Networks. Archived from the original on 25 October 2012. Retrieved 16 February 2017.
  2. Bright, Peter (3 April 2013). "Google going its own way, forking WebKit rendering engine". Ars Technica . Conde Nast . Retrieved 9 March 2017.
  3. 1 2 "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.
  4. 1 2 "Current browser market share". StatCounter . Retrieved 29 October 2021.
  5. M.C. Straver (a.k.a. Moonchild) (July 2022). "Re: YouTube SLOW!". forum.palemoon.org. For the record, even I am not exclusively using Pale Moon either, because the web simply is too Google-centric at the moment. I do use it for the vast majority of sites but there are a few like Youtube and some sites which are simply not interested in being browser agnostic where I use Edge, instead.
  6. M. C. Straver. "About Moonchild Productions". Archived from the original on 13 March 2017. Retrieved 19 April 2018.
  7. "Lifecycle FAQ – Internet Explorer and Microsoft Edge – Microsoft Lifecycle". docs.microsoft.com. Retrieved 30 August 2020.
  8. Mendelevich, Alan (14 May 2021). "You Think You Can Forget About the "Legacy" Microsoft Edge? Not So Fast!".
  9. Mackie, Kurt (10 December 2018). "Microsoft Edge Browser To Get New Rendering Engine but EdgeHTML Continues". Redmond Mag. Retrieved 21 December 2019.
  10. "Opera Browsers, Modes & Engines" . Retrieved 8 January 2024.
  11. "Have you heard about Opera mini extreme mode?" . Retrieved 8 January 2024.
  12. "Opera Mini server upgrade". dev.opera.com. Retrieved 8 January 2024.
  13. "Flow Preview Builds". Ekioh. Retrieved 5 November 2023. Flow's goal is to render every website correctly... but there is currently a long way left to go.
  14. "About Ekioh". Ekioh.
  15. "Flow Browser". Ekioh.
  16. "Servo Projects". GitHub.
  17. "A new browser for Magic Leap". 3 December 2018. Retrieved 20 May 2019.
  18. "Firefox Reality for HoloLens 2". 21 May 2020. Retrieved 17 July 2020.
  19. "Development Progress". NetSurf. Retrieved 3 May 2021.
  20. "NetSurf | News". NetSurf. Retrieved 11 May 2022.
  21. "NetSurf Developer page". Netsurf-browser.org. Retrieved 7 February 2019.
  22. "NetSurf web browser homepage". Netsurf-browser.org. Retrieved 7 February 2019.
  23. 1 2 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.
  24. "SerenityOS F.A.Q." GitHub. This project does not cater to non-technical users.
  25. "KHTML repository". GitHub. Retrieved 5 May 2023. Removed for KF6, the 'kf5' branch contains the last maintained state.
  26. "Port Konqueror away from KHTML". phabricator.kde.org. Retrieved 5 May 2023.
  27. "#1829 Restore Mac OS X code and buildability". 31 March 2022. Archived from the original on 6 May 2022.
  28. "Pale Moon for Android is dead". forum.palemoon.org. April 2019. Retrieved 4 May 2021.
  29. 1 2 "Google kills forthcoming JPEG XL image format in Chromium". The Register. 31 October 2022. Retrieved 7 August 2023.
  30. 1 2 Purdy, Kevin. "FSF: Chrome's JPEG XL killing shows how the web works under browser hegemony". Ars Technica. Retrieved 16 February 2024.
  31. "WebGPU Implementation Status". GitHub. Retrieved 14 March 2024.
  32. "Chrome ships WebGPU". developer.chrome.com. Google. Retrieved 23 February 2024.
  33. "Pale Moon - Release Notes". 21 March 2023.