Edge had its own stuff – EdgeHTML and Chakra now migrating to Chromium tech (and maybe a rebranded name instead of Edge?)Įdge was never getting useful market share and now moving to embrace Chromium.Īpple’s Safari… I am not sure how much Apple cares about Safari, and besides, WebKit gets its fare share of code from Google’s Blink project.Firefox, using its own tech stack with Gecko as the rendered, being replaced by Servo.Up until a year ago, we had 4 roughly independent browser engines for the major 4 browsers: In a way, it is a fork of WebKit, to the point that code integrated into WebKit oftentimes comes directly by porting it enmasse from Blink/Chromium (this is how WebRTC is implemented in Safari/WebKit today). That until 2013 when Google decided to part ways and create Blink – it started by deleting everything it didn’t use out of WebKit and continue from there. WebKit was used by both Safari and Chrome. In the past, we effectively had 3 browsers engines: “Firefox”, “Internet Explorer” and “WebKit” Each browser vendor picks and chooses its own components. That illustration of the browser makeup above? It shows in gray the components that Google uses in Chrome. On top these two pieces sits the browser engine itself, which is later wrapped by the browser. It is usually called JavaScript Engine, but it is already running also WebAssembly, hence my preference in referring it as Runtime.
It is what makes it interactive in modern browsers. The Runtime Engine was all about executing JavaScript code inside the browser. It is what takes your webpage and renders it into something that can be displayed on the screen. Today, it probably also deals with CSS animation. The Renderer deals with displaying HTML pages with their CSS styling. A browser is built out of two main pieces: the renderer and the runtime engine.