So I was posting on this thread which is a meme about how everything is Chromium (except Firefox obviously) and was replying to somebody talking about needing the “Linux of browser engines”.
This got me thinking about a few things as this is an area which I’m very much for reducing the, honestly slightly obscene, amount of control that Google have over this space with Chromium.
So I thought why not make a quick discussion to showcase some alternatives that are out there in development that people might not know about and bring them some attention as well as just foster a discussion in general on the topic.
So this won’t be focusing on Blink and WebKit (nor KHTML which, whilst independent is still closely tied to Blink and WebKit. For those unaware KHTML is KDE’s browser engine, forked by Apple to make WebKit which itself was forked to create Blink. It has also recently been killed off entirely for KF6 so is very much dead end now). By extension this also includes things like Qt WebEngine or anything else based on WebKit or Chromium/Blink.
I’m also not touching on Gecko - the other “big” engine out there. Whilst I am a huge proponent of Firefox, Gecko has proven that it just isn’t as popular to use in alternative browsers as Chromium or Webkit. I’m not knowledgeable to explain exactly why this is but there are plenty of resources out there. By extension I’m also not expanding upon Goanna.
The reason for my interest is also because it goes beyond just browsers - for example these could be used in Electron-like projects for desktop Javascript apps.
So what alternatives are there or are currently in development?
Servo
A project started by then abandoned by Mozilla to develop a new experimental browser engine. Was removedd up by the Linux Foundation and had a recent round of funding to begin active development again. Why do I find this interesting?
- It isn’t being created as part of a larger browser project - i.e. it is a project to develop the engine and not to develop a browser. Hopefully this means it is far more portable and embedabble for anyone who wants to use it for their own project.
- Supported by the Linux Foundation rather than any of the tech corps like Facebook or Google which hopefully means they are more open and friendly to community contribution.
- Written in Rust - I’m not claiming that this is good because of the language technology itself but Rust is currently very popular with lots of people wanting to learn it and contribute to projects so hopefully this inspires people to get involved with it.
- Not a KHTML/WebKit/Blink (or even a Gecko) fork
- Repo is on GitHub - Don’t get me wrong, I’m not a GitHub shill, but generally people monitor and know how to use GitHub better than Google and Mozilla’s systems. I’d honestly be just as happy if using GitLab or any other alternatives as they still confirm to that same user experience (and to be fair WebKit is also on GitHub).
Ferus
A much smaller and lower profile project described as “A toy web engine written in Nim” but one I find interesting enough to be watching
- Written in Nim - I’m all for getting less popular but interesting languages being used in more projects
- Small GitHub hosted and actively developed project that seems would be easy to get involved with if you wanted to help develop or improve the project.
NetSurf and NeoSurf
Not browser engines but browsers that use their own engine and not based on anything else. NetSurf is the original and has been ported to a ton of different OSs (it was actually made for Acorn’s RISCOS originally) but development is somewhat slow so it seems NeoSurf is a fork to try and improve and build upon it.
LibWeb and Ladybird
Part of the fascinating SerenityOS project - Ladybird is its home grown but cross platform browser using its own LibWeb browser engine. Honestly I’m not particularly familiar with the project and the first link does a much better job of explaining it all than I can.
So yeah, just thought to put some open source alternative browser engine projects that are out there to draw attention and foster a little discussion in this community. Interested to see what people think.