Blink (browser engine)

Short description: Free and open-source browser engine of the Chromium project

BlinkDeveloper(s)| The Chromium Project and contributors

|

Initial release| 3 April 2013; 13 years ago (2013-04-03)[1]
Written in| C++
Type| Browser engine
License| BSD and LGPLv2.1
Website| www.chromium.org/blink/

Blink is a browser engine developed as part of the Chromium project with contributions from Apple, Google, Meta, Microsoft, Opera Software, Vivaldi Technologies, Adobe, Intel, IBM, Samsung, and others.[2][3][4] It was first announced in April 2013.[5]

## Contents

* 1 Naming
* 2 History
* 3 Internals
* 3.1 Public API
* 4 Frameworks
* 5 Platforms
* 6 See also
* 7 References
* 8 External links

## Naming

Blink's naming was influenced by a combination of two major factors: the connotations of speed, and a reference to the non-standard presentational blink HTML element,[6][7] which was introduced by Netscape Navigator and supported by Presto- and Gecko-based browsers until August 2013.[8] Blink has, contrary to its name, never functionally supported the element.

## History

Blink is a fork of the WebCore component of WebKit,[9] which was originally a fork of the KHTML and KJS libraries from KDE.[10][11] It's used in Chrome starting at version 28,[12][13] Microsoft Edge starting at version 79,[14] Opera (15+),[12] Vivaldi, Brave, Amazon Silk and other Chromium-based browsers and frameworks.[citation needed]

Much of WebCore's code was used for features that Google Chrome implemented differently such as sandboxing and the multi-process model. These parts were altered for the Blink fork, and although slightly bulkier, it allowed greater flexibility for adding new features. The fork also deprecates CSS vendor prefixes; existing prefixes will be phased out and new experimental functionality will instead be enabled on an opt-in basis.[15] Aside from these planned changes, Blink initially remained relatively similar to WebCore.[13]

By commit count, Google was the largest contributor to the WebKit code base from late 2009 until 2013 when they started work on their fork, Blink.[16]

## Internals

Blink engine has the following components:[17]

* DOM, HTML DOM and CSS rendering engines
* Web IDL implementation
* Skia Graphics engine — makes calls to an underlying Graphics Library (like OpenGL, Vulkan, DirectX etc) which depends on the platform
* V8 JavaScript engine

### Public API

Blink exposes a public API that allows browsers such as Chromium to interact with Blink while remaining insulated from internal changes to the browser engine.[18]

## Frameworks

Several projects exist to turn Chromium's Blink into a reusable software framework for other developers:

* In currently supported versions of the Android operating system (since version 4.4), the WebView component is based on Blink instead of WebKit.[19]
* Chromium Embedded Framework is widely used in software by Adobe Systems,[20][21][22] streaming media services such as Spotify,[23] video game services such as Battle.net and Steam,[24] etc.[25]
* NW.js (previously known as Node-Webkit) is the original Node.js based framework and is being developed by Intel.
* Electron is a Node.js based framework developed by GitHub.
* In the Qt 5 framework, the Qt WebEngine module supersedes the previous QtWebKit module.[25][26] In 2013, Qt WebEngine replaced the Apple-developed WebKit engine with Blink because of its cross-platform features (like WebRTC, WebGL, WebSockets, system calls, etc.) that work out of the box.[27][28] Qt developers found it easier to maintain and test it.[27]
* Microsoft Edge WebView2 is a framework that allows developers of Windows apps to implement a desktop app using web technologies, replacing the older WebView EdgeHTML based or WebBrowser MSHTML based controls.
* DotNetBrowser is a proprietary .NET Chromium-based library that can be used to use Chromium capabilities in a wide range of .NET applications, including desktop and server solutions.[29][better source needed]

## Platforms

Chromium Blink is implemented on seven platforms: Windows, macOS, Linux, ChromeOS, Fuchsia, Android, and Android WebView.

Blink is also unofficially supported on FreeBSD[30] and OpenBSD.[31]

iOS versions of Chromium continue to use the WebKit WebCore renderer.[32]

## See also

* Comparison of browser engines

## References

1. ↑ "[chrome] Log of /releases/28.0.1463.0/DEPS". https://src.chromium.org/viewvc/chrome/releases/28.0.1463.0/DEPS?view=log.
2. ↑ Kingsley-Hughes, Adrian. "The real reason why Google forked WebKit". Red Ventures. https://www.zdnet.com/article/the-real-reason-why-google-forked-webkit/.
3. ↑ "AUTHORS - chromium/src.git - Git at Google". googlesource.org. https://chromium.googlesource.com/chromium/src.git/+/refs/heads/master/AUTHORS.
4. ↑ "Google, Opera Fork WebKit. Samsung Joins Firefox to Push Servo". infoq.com. April 2013. https://www.infoq.com/news/2013/04/Google-Blink-Mozilla-Servo.
5. ↑ "Blink: A rendering engine for the Chromium project". The Chromium Blog. https://blog.chromium.org/2013/04/blink-rendering-engine-for-chromium.html.
6. ↑ Lardinois, Frederic (2013-04-03). "Google Forks WebKit And Launches Blink, A New Rendering Engine That Will Soon Power Chrome And Chrome OS". TechCrunch. https://techcrunch.com/2013/04/03/google-forks-webkit-and-launches-blink-its-own-rendering-engine-that-will-soon-power-chrome-and-chromeos/.
7. ↑ Shankland, Stephen (2013-04-03). "Google parts ways with Apple over WebKit, launches Blink". CNet. https://www.cnet.com/news/google-parts-ways-with-apple-over-webkit-launches-blink/.
8. ↑ Kobie, Nicole (2013-08-07). "Firefox 23 finally kills "blink" tag". PC Pro. https://www.pcpro.co.uk/news/383512/firefox-23-finally-kills-blink-tag.
9. ↑ "Which webkit revision is Blink forking from?". blink-dev mailing list. https://groups.google.com/a/chromium.org/d/msg/blink-dev/J41PSKuMan0/gD5xcqicqP8J.
10. ↑ "'(fwd) Greetings from the Safari team at Apple Computer' – MARC". Lists.kde.org. 7 January 2003. https://lists.kde.org/?m=104197092318639.
11. ↑ "The WebKit Open Source Project". https://webkit.org/.
12. ↑ 12.0 12.1 "Blink". QuirksBlog. April 2013. https://www.quirksmode.org/blog/archives/2013/04/blink.html.
13. ↑ 13.0 13.1 "Google going its own way, forking WebKit rendering engine". Ars Technica. April 2013. https://arstechnica.com/information-technology/2013/04/google-going-its-own-way-forking-webkit-rendering-engine/.
14. ↑ "Download the new Microsoft Edge based on Chromium". https://support.microsoft.com/en-us/help/4501095/download-the-new-microsoft-edge-based-on-chromium/.
15. ↑ "Blink Developer FAQ". https://www.chromium.org/blink/developer-faq#TOC-Will-we-see-a--chrome--vendor-prefix-now-.
16. ↑ Siracusa, John (2013-04-12). "Hypercritical: Code Hard or Go Home". Hypercritical.co. http://hypercritical.co/2013/04/12/code-hard-or-go-home.
17. ↑ "How Blink works" (in en). https://docs.google.com/document/d/1aitSOucL0VHZa9Z2vbRJSyAIsAz24kX8LFByQ5xQnUg/edit?usp=embed_facebook.
18. ↑ "Blink Public API". https://chromium.googlesource.com/chromium/src/+/HEAD/third_party/blink/public/README.md.
19. ↑ "WebView for Android". 28 February 2014. https://developer.chrome.com/multidevice/webview/overview.
20. ↑ Hallgrimur Bjornsson (9 August 2023). "Introducing HTML5 extensions". Adobe Systems. https://www.adobe.com/devnet/creativesuite/articles/introducing-html5-extensions.html.
21. ↑ "Adobe Edge Animate Team Blog". Adobe Systems. https://blogs.adobe.com/edge/.
22. ↑ "CEF integration in Dreamweaver". https://helpx.adobe.com/dreamweaver/using/cef-integration.html.
23. ↑ "Open Source". https://www.spotify.com/us/opensource/.
24. ↑ "Chromium Embedded Framework - Valve Developer Community". https://developer.valvesoftware.com/wiki/Chromium_Embedded_Framework.
25. ↑ 25.0 25.1 "Developer diary: Creating a desktop client for Conclave - 10×10 Room". 2014-04-24. https://10x10room.com/2014/04/24/developer-diary-creating-a-desktop-client-for-conclave/.
26. ↑ "Qt WebEngine Overview". Qt Project. https://doc.qt.io/qt-5/qtwebengine-overview.html.
27. ↑ 27.0 27.1 "Introducing the Qt WebEngine" (in en). https://www.qt.io/blog/2013/09/12/introducing-the-qt-webengine.
28. ↑ "Qt Switching From WebKit To Chromium Engine - Phoronix". https://www.phoronix.com/scan.php?page=news_item&px=MTQ2MDY.
29. ↑ "DotNetBrowser". https://www.teamdev.com/dotnetbrowser.
30. ↑ "FreshPorts www/chromium". 2010-10-13. https://www.freshports.org/www/chromium.
31. ↑ "OpenBSD Ports Readme: port www/chromium". 2023-12-11. https://openports.pl/path/www/chromium.
32. ↑ EMIL PROTALINSKI (2013-04-04). "Google's Blink Q&A: New rendering engine will replace WebKit on all platforms in 10 weeks with Chrome 28". https://thenextweb.com/google/2013/04/04/googles-blink-qa-new-rendering-engine-will-replace-webkit-on-all-platforms-in-10-weeks-with-chrome-28.

## External links

* v
* t
* e

Browser engines

Active|

* Blink
* EdgeHTML
* Gecko
* Goanna
* NetSurf
* Servo
* WebKit

Discontinued|

* KHTML
* Mariner
* Presto
* Tasman
* Tkhtml
* Trident

Comparisons|

* General info
* Support
* HTML
* CSS
* graphics
* typography

* v
* t
* e

Web browsers

Features * standards * protocols

| Features|

* Bookmarks
* Extensions
* Privacy mode
* Sync

|

Web standards|

* HTML
* v5
* CSS
* DOM
* JavaScript
* IndexedDB
* Web storage
* WebAssembly
* WebGL

Protocols|

* HTTP
* v2
* v3
* Cookies
* Encryption
* OCSP
* WebRTC
* WebSocket

Active

| Blink-based|

* Avast Secure Browser
* Beaker
* Blisk
* Brave
* Chrome
* Chromium
* Coc Coc
* Dragon
* Epic
* Falkon
* Kinza
* Maxthon
* Opera
* Otter
* Puffin
* SalamWeb
* Samsung Internet
* Silk
* Sleipnir
* Sputnik
* SRWare
* Torch
* UC
* Vivaldi
* Whale
* Yandex

|

Gecko-based|

* Firefox
* GNU IceCat
* IceDragon
* K-Meleon
* PirateBrowser
* SeaMonkey
* TenFourFox
* Tor
* Waterfox

WebKit-based|

* Dolphin
* Dooble
* GNOME Web
* iCab
* Konqueror
* Midori
* Safari
* surf

Other|

* 360
* Avant
* Basilisk
* CM Browser
* Edge
* eww
* Internet Explorer
* Links
* Lunascape
* Lynx
* NetFront
* NetSurf
* Pale Moon
* QQ browser
* qutebrowser
* SlimBrowser
* w3m

Discontinued

| Gecko-based|

* Beonex Communicator
* Camino
* Classilla
* Conkeror
* Galeon
* Ghostzilla
* Kazehakase
* Kylo
* Lotus
* MicroB
* Minimo
* Mozilla suite
* Pogo
* Strata
* Swiftfox
* Swiftweasel
* Timberwolf
* xB

|

Trident-based|

* AOL
* Deepnet
* GreenBrowser
* MediaBrowser
* MenuBox
* NeoPlanet
* NetCaptor
* SpaceTime
* UltraBrowser
* WebbIE
* ZAC

WebKit-based|

* Arora
* BOLT
* Opera Coast
* Flock
* Fluid
* Google TV
* Iris
* Mercury
* OmniWeb
* Origyn
* QtWeb
* rekonq
* Rockmelt
* Shiira
* Steel
* Browser for Symbian
* Uzbl
* WebPositive
* xombrero

Other|

* abaco
* Amaya
* Arachne
* Arena
* Blazer
* Charon
* Deepfish
* Dillo
* ELinks
* Gazelle
* HotJava
* IBM Home Page Reader
* IBM WebExplorer
* IBrowse
* KidZui
* Line Mode
* Mosaic
* MSN TV
* NetPositive
* Netscape
* Skweezer
* Skyfire
* Teashark
* ThunderHawk
* Vision
* WinWAP
* WorldWideWeb

* Category
* Comparisons
* List

0.00

(0 votes)

Original source: https://en.wikipedia.org/wiki/Blink (browser engine). Read more

|

Retrieved from "https://handwiki.org/wiki/index.php?title=Software:Blink_(browser_engine)&oldid=750370"
*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template