draft0 - a shared blog by just some people

Go To Navigation
Show/Hide Navigation
Alternative Web Browser Engines

I don't think I have to spell out the problem with the current shape of the web browser landscape in detail. Almost every HTTP client uses one of the now three big engines, WebKit, Blink and Gecko. Blink, as the big bad Google one is definitely one that nobody should consciously choose to use. Not everybody trusts WebKit much more because it is developed by another powerful global player that inadvertently collects more data in one hand than can be considered healthy, Apply. And Gecko, the one developed by Mozilla has been criticises for being pushed into a direction that is less free and user-friendly than it is expected from Mozilla. Since Mozilla has received large sums in funding from Google for a while it can be argued that any recent fork of the engine has a history of being influenced by Google. All the other large engines are no longer developed and thus not seen as a possible choice for the future. But there are some options to be discussed for users who want to avoid using a browser that relies on one of the big engines. And there are signs that the lack of competitive differences in browser engines will be reduced in the coming decade.

I like that the recent financial development in the SerenityOS/Ladybird project has prompted discussions about alternative browser engines and has shone some light on upcoming new browser engines written from the ground up. The interest in a new kid on the block has been growing over the last couple of years. So it should not surprise that several projects are undergoing and aim to create alternatives to the current big three browser engines. But in my eyes most of them are still not well-known enough. Not all are equaly useful. So I've decided to mention some options that could replace a mainstream browser at least in some use case.

Using Old Browsers

Yes, I'm covering the less practicle options, too. Using an old browser with security issues that won't be fixed not only might add security holes in the system it is used on, it also doesn't do anything to tackle the problem. The development of browser engines that are used in newer releases will not be affected by some people using them less. Choosing an older browser merely sends a signal and possibly changes statistics to look like you now also forget updating for a long time. But there is range of different lightweight browsers with engines that have no trouble with HTML4 and CSS2 and also offer good JavaScript support. KHTML (Konqueror) becomes an option again, Internet Explorer with Trident or EdgeHTML could get another chance and an old Opera with Presto could continue to shine. But you might need to maintain an envirement of outdated libraries to make your choice over a long time.

Flow

The Flow browser with its own HTML engine is developed by ekioh, a company with experience in developing browser for various embedded devices. As a free product, the preview of a Raspberry Pi version is available. But browsers for all major operating systems are planned. It uses an existing JavaScript engine the JS support is better than with other newly written browser engines. But it also doesn't add as much competition in the market in this regard. I have not tested Flow. As a product from a commercial business it didn't look interesting enough, yet, even though it is reportedly relatively mature.

Haphaestus

The Haphaestus TV Browser is a project by Adrian Cochrane that forms a web browser specifically aimed to be easily navigated with with few buttons (like on a TV remote control). It is a very interesting project because it is made up from several individual parts (CSS engine, font rendering, box layout engine, …) that all are written from the ground up in Haskell. A JavaScript engine is not part of the project. The web is nowadays more pleasant to browse without JS anyway. Adrian also recently started a free year-long course that encourages others to write their own HTML rendering engine (surely with the intention to collect experience for future paid programming courses).

Goanna

Of the browsers that use the Goanna engine, I see Pale Moon recommended most often. Goanna is a fork of Gecko that, by now, differes in features from the current gecko engine. It looks like Goanna may be the way to keep using a relatively old engine that supports all majer web standards very well with an actively developed browser that runs reliably in the OS of your choice. It may not be performing as well as current Gecko browsers like LibreWolf, but there's supposedly a smaller chance that their developers have been influenced by payments from Google.

Dillo

Small, realy light-weight, very simple and currently with no intention to pay any attention to scripts. Older versions of Dillo had been ported to many other systems. The current version 3 is only developed for the now big OSs (Linux, BSD, OS X). But it is very light-weight and snappy compared to mainstream browsers. CSS support is still lacking in the eyes of users who are used to every positional property to work. (Float support is also still missing.)

LibWeb, LibJS

The Ladybird web browser is becoming more known now that a company has been formed around it that has been promised major funding for the next few years. The project started as "the web browser of SerenityOS" but has since gained indipendent support and in turn supported hope that a novel web browser with a new engine will be established on the market of web browsers in the near future. The libweb and libjs libraries were started to build an intependent engine behind Ladybird. An application that will be seen as a usable alternative to Firefox in daily use with no need to fall back on another browser is still far away though.

NetSurf

Another small web browser that good HTML, CSS and JS support is NewSurf. LibDOM, LibCSS and Duktape (JavaScript) are combined to create a simple and portable browser. NetSurf can be found on Atari, Haiku, Linux, RISC OS and other systems. I've also found it a few times on my journay through alternative operating systems (about which I still have to write in this blog). It's the portable, small browser.

Servo

This is one that I like a lot personally. A noval web engine written in Rust. There is currently no full-fledged browser application that uses it. But there is a GUI demo that allows to test the engine with any URL. In my experience, web sites with elaborate design that make use of different layout rules and a lot of JavaScript tend to render better with Servo than with a current Ladybird (LibWeb, LibJS). Support for CSS3 rules is also better than with the small browsers NetSurf and Dillo. The potential is more readibly visible with this one compared to other new projects. Maybe the fact that browsers based on Servo only exist for specific devices is responsible for it being less known than Ladybird. No wonder Mozilla sucks up Serve during their project to replace parts of Gecko with re-implementations in Rust. I guess eventually there will be no big difference between the two engines.

Text-based web browsers are probably not an option for most users. Most web sites are designed for a graphic layout only and even when a page is structured well and can be read with a screen reader, sighted people usually prefer a GUI to a text-based interface. But if you want or a use case requires it, text browsers like links2 or lynx are also worth checking out, of course. Another thing that I'd like to mention here because it could be considered an alternative web browser are auditory browsers. But this entry is meant to be about browser engines, not browsers. Otherwise there would be many more projects that I should mention (browsers with a small user base, forks of Firefox, browsers for quick keyboard use).

Edit: Here's an interesting chart about the live of web browser engines since the first one in 1990.

Comment via email
Mastodon