https://eylenburg.github.io/browser_engines.htm

Many tried, few remain...

Last updated: January 2023

The loss of browser diversity since the rise of Chromium has been greatly lamented. Below you can find a graph that shows the historical and present browser engines (not browsers, but the HTML rendering engines), as well as from when to when they were developed. For the bigger engines, the market share is indicated by a coloured shape (see legend).

We're now well into the "fourth era of dominance". NCSA Mosaic dominated at the beginning (first dominance), but it was dethroned by Netscape which briefly held the majority of the market share (second dominance), both of which then were overtaken by Internet Explorer (originally using the engine from Spyglass Mosaic, and later Trident) (third dominance), which then was weakened first by Firefox (Gecko engine) but finally dethroned by Chromium (Blink engine) (fourth dominance). In terms of active and relevant engines there's now only Blink (Chrome, Edge, Opera, Vivaldi, Brave, Samsung Internet, UC Browser and many more), WebKit (Safari and all iOS browsers), and Gecko (Firefox and its forks).

But see for yourself:

Click here to open the picture in a new tab

Today's surviving engines can be divided into three groups:

1. Active engines, including experimental ones

  • Gecko (Firefox). Down to 4% market share, mismanaged by Mozilla which prioritizes pushing its politics over improving the browser. Open source
  • Goanna (Pale Moon), a fork of an old version of Gecko. At 0% market share and always at risk of not catching up with the newest web standards that Google invents. Open source
  • WebKit (Safari), a fork of KHTML. Around 15-20% market share thanks to Apple's policy of only allowing WebKit-based browsers on iOS. Open source
  • Blink, a fork of WebKit. It's the dominant engine nowadays, and it underpins Chromium, which is the basis for Chrome, Edge, Opera, Brave, Vivaldi, Samsung Internet and most other browsers; QtWebengine, which is the basis for Falkon and Otter Browser; Android WebView; Windows WebView 2; and Electron, where Blink is used to render the UI of apps. Close to 80% market share. Open source
  • Hubbub, used only in NetSurf, a rather basic browser with no support for advanced web standards such as HTML 5. 0% market share. Open source
  • The engine of iBrowse, which is available for Amiga OS and seems to be a basic browser too without full web standards supports. 0% market share. Closed source
  • Servo. This promising engine was developed by Mozilla, and parts of the Servo engine have been incorporated into Gecko. In 2020, Mozilla fired a quarter of their developers, which apparently included the whole Servo team. There have still been some commits to the code since then (presumably by hobbyists) but it is questionable if Servo will have a future. Update: Servo is now hosted by the Linux Foundation. Open source
  • Flow, which focuses on TVs, but seems to be a promising newcomer. Unfortunately it's not open source so it's likely that the company will concentrate on their TV niche and that Flow won't ever become a real competitor to Blink. Closed source
  • LibWeb, the engine powering Ladybird and the SerenityOS Browser. SerenityOS is a Unix-like operating system that has been developed from scratch by Andreas Kling since 2018. The browser is still quite experimental, but it's still great to see another contender. Open source
  • KolibiOS WebView, which started as a text browser but has over time added some basic formatting and image support.Open source

2. Zombie engines

  • Trident (Internet Explorer), while technically Trident will still get security updates until the end of Windows 10 (no date announced), there haven't been any new features or development of standards support since Edge came out in 2015. Microsoft announced that they will stop supporting Internet Explorer on most versions of Windows in 2022, but engine itself will remain accessible in Edge's "IE Mode" and hence will still receive security updates if necessary. Closed source
  • EdgeHTML, mostly known from its use in Legacy Edge, which was replaced by a newer Chromium-based Edge in 2020. Legacy Edge was forcefully removed via Windows Update in April 2021, but Microsoft confirmed that the EdgeHTML engine will still be supported with security updates, as it also been used for the built-in WebView in Windows UWP apps (superseded but not automatically replaced by Blink-based WebView 2). Closed source
  • KHTML (Konqueror), the ancestor of WebKit and Blink. Konqueror itself never got more than 0% market share, and developed has de facto stopped since about 2016, although there are still (trivial) commits to the code until today. Open source
  • Presto (Opera Mini). This engine was used in Opera until version 12 (2013). The company gave up developing their own engine and created a new browser based on Blink, which Google and Opera forked from WebKit in the same year. Opera Mini, one of the mobile browsers, still uses server-side Presto rendering on basic phones (e.g. Java-based phones), however the app hasn't been updated since 2014 but it still available for download. On Android, Opera Mini uses server-side Presto rendering when the "Extreme" data savings mode is chosen. The last known update to the Presto engine was in 2015 according to a blog post, but given that it's still used in Opera Mini to some degree it is likely that the code is still somewhat maintained. Closed source (but source code has leaked)
  • U2 (UC Browser). This engine was used in older versions of UC Browser. It is not quite clear to which extent it is used today; it appears to still be used in the app for basic phones, which like Opera Mini hasn't been updated since 2014 but is still available to download. Furthermore, past version of Android seemed to have included an optional "Speed Mode" that would revert to U2 rendering instead of Blink rendering, however this feature seems to be absent from Android nowadays. Closed source
  • Arachne. This basic browser supports only the most basic of HTML and CSS. It's not really in active development but happens to get a minor update every couple of years. Open source
  • Dillo. Basic browser for simple websites only. While the last stable release was in 2015, there have been more commits since and the project is not officially dead yet. There's also Dillo forks in development. Open source
  • Cobra. This engine is used in the Lobo Browser, written in Java. The website is online but there are no downloads available as the website is under construction. It is unclear to me what's the state of this engine and browser and whether it's alive or dead. Hence the zombie status. Open source

3. Text browsers

  • Lynx Open source
  • Links Open source
  • w3m Open source

4. Embedded rendering

  • Sciter. Used for rendering the UI of apps. There's no browser using Sciter to display websites, and the engine is Closed source.
  • Ultralight. Soft fork of WebKit that aims to be a light-weight alternative to Electron (Chromium) for apps. Open source
  • MS Word. This is the engine used in Microsoft Office, including Outlook which uses it render HTML emails. There's no browser using the Word engine to display websites. Closed source
  • Prince. This is a HTML/CSS engine used in a commercial product that converts HTML into PDFs. There's no browser using this engine to display websites. Closed source
  • Satori. This is a HTML/CSS engine used used to converts HTML into SVGs. There's no browser using this engine to display websites. Open source
  • Chinese Blink variants. There is little information out there. There seems to be X5 by Tencent, used in WeChat and some versions of QQ Browser, as well as T7 used by Baidu's "baiduboxapp" (a search app for phones?), both Closed source. Other Chinese engines include UC's U3 and Baidu's T5, both of which seem to be dead now. All of these are based on Blink and it is unclear how much they actually differ or if they are just a rebranding of Blink, or a kind of CCP-approved Blink bastardization, or a real fork with useful features added.

Question Marks

Some questions remain and if anyone can help with information this will be greatly appreciated.

  • Was Netscape based on NCSA Mosaic's engine?
    • No, according to: Clark, Jim; Owen Edwards (1999). Netscape Time: The Making of the Billion-Dollar Start-Up That Took on Microsoft. St. Martin's Press. ISBN 978-0312199340. "The Mosaic Netscape web browser did not use any NCSA Mosaic code", quoted via Wikipedia. https://archive.org/details/netscapetimemaki00clar
  • Was Spyglass Mosaic's engine (used also in IE 1-3) based on NCSA Mosaic's engine?
    • No, according to: https://ericsink.com/Browser_Wars.html. "Yes, we licensed the technology and trademarks from NCSA (at the University of Illinois), but we never used any of the code. We wrote our browser implementations completely from scratch, on Windows, MacOS, and Unix."
  • Was Trident (IE 4-11) based on Spyglass Mosaic's engine (IE 1-3)?
    • I have never found any information, so I will assume that IE 4's Trident engine was completely developed from scratch.
  • Was Presto (Opera 7-12) based on Elektra (Opera 3.5-6), and was Elektra based on the original Opera's engine?
    • I have assumed yes, but evidence is spurious: in http://www.blooberry.com/indexdot/history/opera.htm it uses the wording "rendering engine re-write (now referred to as "Presto")" for Opera 7. This makes it seems like Presto was just a re-write, not a new engine written completely from scratch. The same might be true for Elektra years before.
  • Was iBrowse's engine based on Mosaic?
    • Wikipedia says iBrowse was a "rewritten follow-on" to the Amiga version of NCSA Mosaic, via Bettinson, Mat (November 1996). "Battle of the Browsers, IBrowse 1.0". CU Amiga. No. 81. EMAP. pp. 54-56. Like with Presto above, I assume that "rewritten" means "not started from scratch", but it is not very clear.
  • Are the Zombie engines (see above) still maintained?
    • For EdgeHTML there is the issue of Windows WebView, for which (unlike Legacy Edge) no end of life has been announced. For Presto it is unclear because it's still kind of available in Opera Mini but only through server-side rendering so the code might be untouched for years now.
    • For U2, it's the same, just for UC Browser instead of Opera
    • For KHTML, there are still some very minor commits to the code (such as changing KDE versions), but for all other intents and purposes Konqueror is dead
    • Line Mode Browser (last update in 2006, but used in libwww)
  • What are those obscure Chinese engines? There's U2, U3, X5, T5, and T7 at least, but besides U2, which seems to be its own thing, the rest all appear to be soft forks or mere rebrandings of WebKit/Blink. Are they really their own engines?
  • The starting and end dates of obscure and historic browsers are often speculative
  • Market shares are obviously hard to be determined, especially because there's not one single website which has kept track since the beginning of the web. The newest numbers I have used are from StatCounter, by the way.

For reference (e.g. if the picture doesn't display), the engines included above are:

  • WorldWideWeb/Nexus
  • Line Mode Browser (text-based)
  • ViolaWWW
  • Erwise
  • Lynx (text-based) STILL ALIVE
  • MacWWW
  • MidasWWW
  • tkWWW
  • Arena
  • Cello
  • NCSA Mosaic
    • Fork: mMosaic
    • Fork: VMS-Mosaic
    • Fork: Mosaic-CK
    • Fork (???): iBrowse STILL ALIVE
  • Ariadna
  • Fresco
  • HotJava/Webrunner
  • IBM WebExplorer
  • InternetWorks
  • MacWeb
  • Netscape (v1-5, engine later called Mariner)
  • Netmanage Chameleon
  • Pocketweb
  • Prodigy
  • SlipKnot
  • Tkhtml
  • Grail
  • Mothra
  • NetCruiser
  • Netfront
  • OmniWeb
  • Spyglass Mosaic (engine most famously used in Internet Explorer 1-3)
  • UdiWWW
  • WebTV/MSN TV
  • w3m engine (text-based) STILL ALIVE
  • Amaya
  • Arachne UNDEAD, not officially dead but development has mostly ceased
  • AWeb
  • Charon
  • Cyberdog
  • Espial/Escape
  • Lotus Notes (email rendering)
  • NetHopper
  • NetPositive
  • Opera (original engine in v1-3.21)
    • Fork (???): Elektra (used in Opera v3.5-6)
      • Fork (???): Presto (used in Opera v7-12) UNDEAD, still used in Opera Mini in 'extreme data savings' mode and on basic phones
  • Oracle PowerBrowser
  • PlanetWeb
  • Pocket Internet Explorer
  • UP.Browser/Openwave
  • AOL IWENG
  • ICEBrowser
  • Gecko (used in Netscape v6-9/Mozilla/Firefox/Seamonkey) STILL ALIVE
    • Fork: Clecko (used in Classilla)
    • Fork: Goanna (used in Pale Moon and Basilisk) STILL ALIVE
  • Gzilla
    • Fork: Dillo UNDEAD, not officially dead but development has mostly ceased
  • Microsoft Word (used in Office & Outlook for email rendering as well as exporting and importing HTML to/from Word/Excel/Powerpoint) STILL ALIVE but not used in any browser
  • Robin (used in The Bat! for email rendering, until 2020)
  • STNC HitchHiker/MS Mobile Explorer
  • Trident (used in Internet Explorer 4-11) UNDEAD, will still get security updates until the end of life of Windows 10
  • EdgeHTML (used in Legacy Edge) MORIBUND, end of life for Legacy Edge was April 2021, and it is quite likely Windows WebView (based on EdgeHTML) will also stop being supported at some point (it has already been superseded with WebView 2 based on Blink)
  • KHTML (used in Konqueror) UNDEAD, only minor code commits for the last few years
    • Fork: wxHTML
    • Fork: GtkHTML
    • Fork: WebKit (used in Safari, GNOME Web, and Midori) STILL ALIVE
      • Fork: U3 (used in UC Browser)
      • Fork: T5 (used in Baidu Browser)
      • Fork: Ultralight (for use in apps and games)
      • Fork: Blink (used in Chromium, Chrome, Edge, Opera, Brave, Vivaldi, Samsung Internet, UC Browser, and many more) STILL ALIVE
        • Chinese Blink variant: X5 (used in WeChat and QQ Browser, both by Tencent)
        • Chinese Blink variant: T7 (used in Baiduboxapp)
  • Clipper (used in Palm browser)
  • iCab
  • jB5
  • Links (text-based) STILL ALIVE
  • Mango (used in BlackBerry browser in OS 1-5)
  • Obigo
  • WinWAP
  • Blazer
  • Interactor (used in Oregan Browser)
  • Tasman (used in Internet Explorer 5 for Mac and later in Entourage for email rendering)
  • Voyager
  • Netgem
  • Netrik (text-based)
  • Off by One
  • retawq (text-based)
  • Thunderhawk
  • HomePageReader
  • Lumi (used in Polaris Browser 1-6)
  • Vision Mobile
  • Contiki Browser
  • iPanel Microbrowser
  • Skweezer
  • Galio
  • Prince (HTML to PDF conversion) STILL ALIVE but not used in any browser
  • U2 (used in UC Browser) UNDEAD, still used in UC Browser for basic phones
  • Sciter (app UI rendering) STILL ALIVE but not used in any browser
  • Hubbub (used in NetSurf) STILL ALIVE
  • Teashark
  • Cobra (used in Lobo Browser) UNCLEAR if this browser is still developed
  • KolibriOS WebView STILL ALIVE but very basic
  • Fugu (used in Myriad Browser 6)
  • Magellan (used in Myriad Browser 7)
  • Skyfire
  • Servo STILL ALIVE
  • Ekioh Flow STILL ALIVE
  • LibWeb (used in Ladybird and the SerenityOS Browser) STILL ALIVE
  • Satori (HTML to SVG conversion) STILL ALIVE but not used in any browser

[转帖]History of Web Browser Engines from 1990 until today的更多相关文章

  1. 关于PB调用Microsoft Web Browser控件的一些问题

    Microsoft Web Browser控件是WINDOWS系统自带的控件,一般不需要单独安装,由于工作的需要,把使用中遇到的问题记录一下,以便查阅. 插入控件: 环境为PB12.0,insert- ...

  2. [转]Display PDF within web browser using MVC3

    本文转自:http://www.codeproject.com/Tips/697733/Display-PDF-within-web-browser-using-MVC Introduction I ...

  3. 对于一个网站,如何禁止直接从浏览器Web browser中访问js文件

    比如有一个网站,https://testsystem.infotest.com 在这个网站的内容文件目录下面,有一个scripts文件夹,该文件夹中有一个js文件,比如lukeTest.js文件 这样 ...

  4. C#彻底解决Web Browser 跨域读取Iframes内容

    C#彻底解决Web Browser 跨域读取Iframes内容 用C# winform的控件web browser 读取网页内容,分析一下数据,做一些采集工作. 如果是同一个域名下面还是好办的,基本上 ...

  5. 教你如何清除 MyEclipse/Eclipse 中 Web Browser 和 Switch Workspace 的历史记录

    有些许强迫症的开发人员可能会因为 MyEclipse/Eclipse 中 Web Browser 和 Switch Workspace 冗余的历史记录而感到苦恼,下面的方法就可以有效的帮助解决你的痛点 ...

  6. How To Open An URL In Android’s Web Browser

    How To Open An URL In Android’s Web Browser 以下核心代码片断,将展现使用“android.content.Intent” 打开一个指定的 URL. butt ...

  7. How to open a web site with the default web browser in a NEW window

    http://delphi.about.com/cs/adptips2004/a/bltip0504_4.htm When using ShellExecute (as explained in th ...

  8. Have your GDX app run in the web browser

    https://code.google.com/p/libgdx-users/wiki/Applets—————————————————————————————————————————————— Ha ...

  9. [转载]Install Opera 12.16 Web Browser in CentOS/RHEL and Fedora

    FROM: http://tecadmin.net/install-opera-web-browser-in-centos-rhel-fedora/ Opera is an modern web br ...

  10. History of the browser user-agent string--转

    https://webaim.org/blog/user-agent-string-history/ In the beginning there was NCSA Mosaic, and Mosai ...

随机推荐

  1. 第七部分_Shell脚本之循环

    for循环语句 关键词:爱的魔力转圈圈 1. for循环语法结构 空行相对于for循环类似于空格 ㈠ 列表循环 列表for循环:用于将一组命令执行已知的次数 基本语法格式 for variable i ...

  2. 关于GO语言,这篇文章讲的很明白

    摘要:本文从Go的语法,类型系统,编码风格,语言工具,编码工具和使用案例等几方面对Go语言进行了学习和探讨. Go语言发布之后,很多公司特别是云厂商也开始用Go语言重构产品的基础架构,而且很多企业都是 ...

  3. Python图像处理丨图像的灰度线性变换

    摘要:本文主要讲解灰度线性变换. 本文分享自华为云社区<[Python图像处理] 十五.图像的灰度线性变换>,作者:eastmount. 一.图像灰度线性变换原理 图像的灰度线性变换是通过 ...

  4. 小熊派:用OpenHarmory3.0点亮LED

    摘要:作为一个代表性的完整的开发,本案例可以分成3大部分:代码文件的规划,LED灯的驱动开发,点亮LED的业务开发. 本文分享自华为云社区<在小熊派Micro上用OpenHarmory3.0点亮 ...

  5. 火山引擎ByteHouse:如何用OLAP引擎提升数字营销效果?

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群   随着市场竞争的加剧,企业对数字营销投入的效果监测和优化需求日益增强,营销实时监控也成为企业提升运营效率的重要手 ...

  6. 火山引擎ByteHouse:一套方案,让OLAP引擎在精准投放场景更高效

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群   由于流量红利逐渐消退,越来越多的广告企业和从业者开始探索精细化营销的新路径,取代以往的全流量.粗放式的广告轰炸 ...

  7. Solon 开发进阶

    Solon 开发进阶 一.插件扩展机制 二.体外扩展机制 三.常用配置说明 四.启动参数说明 五.全局异常订阅 本系列在内核知识的基础上做进一步延申.主要涉及: 插件扩展体系 体外扩展体系 常用配置 ...

  8. 🔥 DeepVideo 智能视频生产训练营火热报名中!

    阿里云视频云和阿里云开发者学堂联合打造 国内首个视频云训练营11月8日启幕 四天直播,技术大咖亲临授课干货 全面介绍视频智能生产技术和产品 帮助开发者迅速入门视频云 已超千人报名,丰富打卡玩法礼品 活 ...

  9. 2018年第九届 蓝桥杯C组 C/C++决赛题解

    蓝桥杯历年国赛真题汇总:Here 1.年龄问题 s夫人一向很神秘.这会儿有人问起她的年龄,她想了想说: "20年前,我丈夫的年龄刚好是我的2倍,而现在他的年龄刚好是我的1.5倍". ...

  10. LocalDateTime、LocalDate、Date的相互转换

    1==LocalDateTime 转 LocalDate: 直接调用 toLocalDate() 方法: LocalDateTime localDateTime = LocalDateTime.now ...