What is a Browser Engines?

A browser engine is the core software that powers web browsers. It is responsible for critical functions like:

  • Rendering HTML, CSS, JavaScript code from websites into visual webpages
  • Parsing and executing JavaScript code
  • Handling browser features like history, bookmarks, etc.

Popular browser engines include:

  • Blink – Powers Chrome, Edge, Brave, Opera and more
  • Gecko – Powers Firefox
  • WebKit – Powers Safari

What is Blink?

Blink is an open-source browser engine that powers several major web browsers including Google Chrome, Microsoft Edge, Opera and Brave. It was first introduced in April 2013 as a fork of the WebKit browser engine which also powers Apple’s Safari browser.

Origins of Blink

Blink traces its origins to the initial version of WebKit created for Apple’s Safari browser in 2001. Google later adapted WebKit into its own browser engine for Chrome called WebCore. However over time, Google began making significant changes and enhancements to WebCore rendering it substantially different from Apple’s version of WebKit. This increase in complexity made collaboration on a common codebase difficult.

In April 2013, Google forked its WebCore component from WebKit – that became the starting point for the Blink rendering engine. This allowed Google to implement its own vision and innovation in Chrome, while Apple continued to evolve WebKit independently its own way. The result was two high-performance browser engines sharing some common heritage code.

Major Features of Blink

As a fork of WebKit, Blink inherits great support for modern web standards like HTML5, CSS3, JavaScript, etc. But over the years, Google has added several unique features to the engine like:

  • Very fast JavaScript execution – Google’s V8 JavaScript engine integrated into Blink powers impressive speeds
  • Multi-process architecture – Ensures browser stability and performance via process isolation
  • Minimal UI – Light browser chrome focused on webpages
  • Frequent updates – Gets new features, security and performance improvements every 6 weeks

Beyond that, some additional capabilities in Blink include:

CapabilityDescription
WebAssembly SupportRun near-native speed code on webpages
WebRTCEnable real-time video/audio communication
Media PlaybackHTML5 video and audio
Web PaymentsEasy payments integration via PaymentRequest API
WebVRVirtual reality content in the browser

Blink Within Chromium

Because Blink powers Google Chrome, it is most often associated with Chromium – the open source project used to build Chrome and many other browsers.

Components of Chromium

Chromium is made up primarily of these components:

  • Blink – Responsible for browser rendering and core functions
  • V8 – The high-performance JavaScript execution engine
  • Plugins – Like Adobe Flash, PDF viewer etc.
  • Linux Libraries – Numerous system libraries for Linux builds

Of these, Blink plays a central role – integrating and interacting with the other components to deliver the complete browser.

Blink Within Chrome

Blink is a critical component within Google’s Chrome browser which includes other proprietary Chrome-only features like – automatic updates, Chrome Sync, translation engine, media codecs and DRM modules, crash reporting and feedback loops that are unique to the Chrome browser.

But the Blink engine itself remains identical between Chromium and Chrome builds.

Thus Blink forms the common foundation on which Chrome, Microsoft Edge, Brave etc are further built upon.

Development Of Blink

Blink is actively developed by Google plus contributions from the open source community. Over 900 companies and individuals have contributed to improving the Blink engine and related Chromium components.

Release Cycles

A key attribute of Blink’s development cycles are the frequent release timelines.

  • New version of Blink ships every 6 weeks
  • Browsers like Chrome roll-out updates in the subsequent weeks

This ensures users get the latest features, performance gains and security fixes on a predictable, rapid release schedule. And allows the project to get built more collaboratively.

Dev Channel

Experiments and implementations that are under active development can be tried out earlier via –

  • Chromium’s Dev Channel – Users can build Chromium from source and test latest dev changes
  • Chrome’s Canary Channel – Every night automated build with newest changes

This exposure allows enthusiastic users to try out latest innovations even before their stable release, and deliver valuable feedback in the process.

Governance Model

Google governs Blink and Chromium’s overall development much like other open source projects. The Chrome team sets high-level goals and priorities, but primarily –

  • Numerous companies and independent developers contribute changes and improvements
  • Features and fixes accepted based on alignment with project objectives, architecture and quality criteria

This meritocratic governance model focused on consensus building has fueled Chromium and Blink’s unprecedented growth.

Alphabet (Google’s parent company) continues to directly employ and set direction for the most active contributors to the project. But external developers have also been able to significantly impact the roadmap and drive innovations in meaningful ways.

Adoption Of Blink

Since its launch in 2013, Blink has seen massive adoption across the industry. This can be attributed to multiple factors:

  • Google’s own push for Chromium across devices like desktop, Android, Chrome OS
  • The web compatibility, performance and stability it provides
  • Demonstrated ability to handle complexity at Google scale
  • Trusted and large development community supporting it

Blink/Chromium is now used in more ways than just powering web browsers.

Use in Web Browsers

All major browsers except Safari currently use Blink directly or via Chromium:

  • Google Chrome
  • Microsoft Edge
  • Brave
  • Opera
  • Vivaldi
  • Yandex Browser
  • Arc Browser
  • Many regional browsers rely on Blink/Chromium like Kakaotalk Browser, Raider Browser, Amigo Browser etc.

Together these browsers account for around 65% of global desktop browser marketshare as per StatCounter – making Blink the dominant browser engine.

Use in Apps/OS

In addition, Blink/Chromium serves as the web rendering framework in these apps and platforms outside of desktop browsers:

PlatformUsage
Android AppsVia Android System WebView that allows showing web content within native apps
Chrome OSThe entire Chrome OS user interface is powered by web technologies and Blink
Electron Desktop AppsCross-platform desktop app framework used by apps like Slack, Discord, WhatsApp
ChromecastCast sender apps on phones/tablets use Blink to render web-based media

Expanding beyond being just a browser engine, Blink now powers web views across mobile, desktop and living room devices used by billions!

Technical Architecture

Understanding Blink’s high level architecture is key to appreciating the innovations that make it unique.

Multi-process Model

Blink uses a multi-process architecture where the browser UI, tabs and extensions run in separate operating system processes isolated from each other. Some key benefits this provides are:

  • Prevents 1 misbehaving tab from crashing entire browser
  • Faster page loads – tabs gets own dedicated processes for parallel execution
  • Higher security – exploit in one tab cannot access data from others

The various Blink sub-components communicate with each other via specialized interfaces called Mojo APIs – keeping them loosely coupled.

Rendering Engine

At the heart of Blink lies its standards-compliant HTML layout and rendering engine.

It features multiple innovations like –

  • Parallel rendering pipeline to leverage multi-core processors
  • Advanced image decoding and effects via GPU
  • Optimized memory allocation and garbage collection logic

This engine parses HTML/CSS code and visually renders it to the screen at blazing speeds while fully supporting the latest web standards.

JavaScript Interpreters

For interpreting and executing JavaScript on webpages, Blink relies on Google’s V8 JavaScript engine. V8 features –

  • Just-In-Time compiler for improved performance
  • Fast object allocation on the heap
  • Lazy parsing of functions

In some cases, V8 compiling JavaScript code to native machine code makes it execute faster than even statically compiled languages like C++!

Share.

The For Browser Team is a group of web browser aficionados dedicated to spreading their extensive knowledge about all aspects of web browsers. With a strong background in computer science and years of collective experience building, testing, and optimizing various browsers, For Browser Team provides authoritative, in-depth guides on browsers like Google Chrome, Firefox, Edge, Opera, Brave, and more. Leveraging their expertise on browser architecture, functionality, extensions, themes, tips/tricks, vulnerabilities, and web standards compatibility, For Browser Team creates tutorials and explainers to empower everyday users in getting the most out of their browsers.

Leave A Reply