For the First Time in Years, Someone Is Building a Web Browser From Scratch
It’s one of the most daunting tasks in software. But by starting with a blank slate, Flow wants to make web browsing better on cheap hardware.
By Jared Newman
For more than two decades, building a new web browser from scratch has been practically unheard of. But a small company called Ekioh has its reasons.
The Cambridge, U.K.-based company is developing a browser called Flow, and unlike the vast majority of browsers that have arrived in recent years, it’s not based on Google’s Chromium or Apple’s WebKit open-source code. Instead, Flow is starting with a blank slate and building its own rendering engine. Its goal is to make web-based apps run smoothly even on cheap microcomputers such as the Raspberry Pi.
There’s a reason companies don’t do this anymore: Experts say building new browsers isn’t worth the trouble when anyone can just modify the work that Apple and Google are doing. But if Flow succeeds, it could rethink the way we browse the web and open the door to cheaper gadgets. That at least seems like a goal worth pursuing.
“It’s a huge task, but if you want something which is very small and very fast, you typically can’t start with one of the other engines,” says Stephen Reeder, Ekioh’s commercial director.
Made From Scratch No More
Even if you don’t use Google Chrome, Apple Safari, or Mozilla Firefox, you’re almost certainly using those browsers’ rendering engines.
Vivaldi, Brave, Opera, and Microsoft’s Edge all rely on Google’s Blink engine and Chromium open-source code as the basis for their desktop and Android browsers. That’s because the web is much more complex than it used to be, and web browsers have become complicated pieces of software along with it. Chromium, for instance, has more than 25 million lines of code, according to Open Hub, and has received contributions from more than 8,100 developers.
“We’ve essentially transformed this idea that the web is about a bunch of pages, maybe with a bit of interaction and animation . . . to essentially the browser becoming an operating system,” says John Allsopp, a veteran web designer and founder of the Web Directions conference.
As a result, most browser makers have backed away from building and maintaining their own engines. Microsoft famously gave up on its EdgeHTML engine a few years ago, switching to a version of Edge based on Chromium and the Blink engine in early 2020. Opera had done the same in 2013, abandoning its venerable Presto engine and adopting Chromium.
Compounding the matter is Apple, which requires all third-party browsers on iOS to use its own WebKit engine, ostensibly for security reasons. Even Mozilla, which develops its own Gecko engine for Firefox as a matter of principle, still has to use WebKit on iOS. Not being allowed to use a different browsing engine on one of the world’s biggest computing platforms could further dissuade developers from trying to make their own.
Chris Coyier, the cofounder of CodePen and creator of CSS-Tricks, says that due to the head start that big browsers already have, building a competitive browser engine would be a billion-dollar effort with no clear payoff. He’s argued that browser makers can focus on user-facing features, such as Brave with its focus on privacy or Vivaldi with its extreme customization, rather than behind-the-scenes rendering-engine improvements.
“It’s not a game that’s worth playing,” Coyier says via email. “A better game is: how can we make the [browsers] we already have better?”
New Browser, New Business
So why is Ekioh even bothering? With Flow, the company sees a chance to play a different game entirely. Instead of taking on big browsers directly, it’s building a browser around specific uses where a new rendering engine would have clear benefits.
Ekioh’s business is in providing web-based applications on embedded systems, such as connected TV boxes, smart displays, and car dashboards. On these kinds of devices, Ekioh believes that a feature called multithreaded layout could vastly improve performance, especially for things such as animations and effects.
“In a nutshell, what makes Flow different from the other browsers is its performance,” Ekioh’s Stephen Reeder says.
As an example, Reeder says to consider a button that expands in size and displays some explanatory text as you scroll over it. On a low-power device, that kind of animation can be difficult to pull off, especially if just a single processing core is doing all the work. With Flow’s browser, applications can tap into multiple processing cores on devices such as the Raspberry Pi, making complex animations easier.
While Flow is just a blip on the browser scene today, you never know where it might go.
Part of the excitement is also more abstract: With core web browser development largely in the hands of Apple and Google, there’s a fear that the web will suffer from a “monoculture” and lose its independent spirit. Chris Beard, Mozilla’s former CEO, expressed this concern in late 2018, when Microsoft abandoned its own browser engine in favor of Chromium and Blink.
In practice, that concern is a bit overblown these days. As a Chromium contributor, Microsoft itself now has some say over the browser’s direction, as do outside firms such as Igalia, a consulting group that helps companies get new features implemented in major browsers.
But as Brian Kardell, Igalia’s developer advocate, points out, a diverse browser culture still has its merits. Even with no shortage of outside input, building browser engines is an expensive, time-consuming process that tech giants such as Apple and Google are largely funding themselves. There’s no guarantee that they won’t eventually lose interest and underfund their efforts.
“Maybe it’ll open up the web to a whole new class of device, where we haven’t seen it,” he says.