The Chromium Embedded Framework (CEF) is an
open-source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
software framework
In computer programming, a software framework is an abstraction in which software, providing generic functionality, can be selectively changed by additional user-written code, thus providing application-specific software. It provides a standard ...
for embedding a
Chromium
Chromium is a chemical element with the symbol Cr and atomic number 24. It is the first element in group 6. It is a steely-grey, lustrous, hard, and brittle transition metal.
Chromium metal is valued for its high corrosion resistance and h ...
web browser
A web browser is application software for accessing websites. When a user requests a web page from a particular website, the browser retrieves its files from a web server and then displays the page on the user's screen. Browsers are used on ...
within another
application
Application may refer to:
Mathematics and computing
* Application software, computer software designed to help the user to perform specific tasks
** Application layer, an abstraction layer that specifies protocols and interface methods used in a c ...
. This enables
developers to add web browsing functionality to their application, as well as the ability to use
HTML
The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScri ...
,
CSS
Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation of a document written in a markup language such as HTML or XML (including XML dialects such as SVG, MathML or XHTML). CSS is a cornerstone t ...
, and
JavaScript
JavaScript (), often abbreviated as JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. As of 2022, 98% of Website, websites use JavaScript on the Client (computing), client side ...
to create the application's
user interface
In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine f ...
(or just portions of it).
CEF runs on
Linux
Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which i ...
,
macOS
macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac (computer), Mac computers. Within the market of ...
, and
Windows
Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ...
. It has many
language binding
In programming and software design, binding is an application programming interface (API) that provides glue code specifically made to allow a programming language to use a foreign library or operating system service (one that is not native to ...
s including
C,
C++,
Go,
Java
Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mo ...
, and
Python.
Overview
There are two versions of Chromium Embedded Framework: CEF 1 and CEF 3. Development of CEF 2 was abandoned after the appearance of the Chromium Content API.
CEF 1 is a single-process implementation based on the Chromium WebKit API. It is no longer actively developed or supported.
CEF 3 is a multi-process implementation based on the Chromium Content API and has performance similar to Google Chrome. It uses asynchronous messaging to communicate between the main application process and one or more render processes (
Blink
Blinking is a bodily function; it is a semi-autonomic rapid closing of the eyelid. A single blink is determined by the forceful closing of the eyelid or inactivation of the levator palpebrae superioris and the activation of the palpebral porti ...
+
V8 JavaScript engine). It supports
PPAPI plugins and extensions, both internal (PDF viewer) or externally loadable.
The single-process run mode is not supported, but still present; currently is being used for debugging purposes only.
On March 16, 2019, the CEF version numbering changed with the release of CEF 73.1.3+g46cf800+chromium-73.0.3683.75. The previous release on March 14, 2019 was CEF 3.3683.1920.g9f41a27. Both of these releases were based on Chromium 73.0.3683.75, however the new version numbering has the major number the same as the Chromium major version number it is based on.
CEF comes with a sample application called CefClient that is written in
C++ using
WinAPI
The Windows API, informally WinAPI, is Microsoft's core set of application programming interfaces (APIs) available in the Microsoft Windows operating systems. The name Windows API collectively refers to several different platform implementations th ...
,
Cocoa
Cocoa may refer to:
Chocolate
* Chocolate
* ''Theobroma cacao'', the cocoa tree
* Cocoa bean, seed of ''Theobroma cacao''
* Chocolate liquor, or cocoa liquor, pure, liquid chocolate extracted from the cocoa bean, including both cocoa butter and ...
, or
GTK (depending on the platform) and contains demos of various features. Newer versions include a sample application called CefSimple that, along with an accompanying tutorial, show how to create a simple application using CEF 3.
Documentation can be found in the header files located in the "include" directory and on wiki pages.
Supported languages
The base CEF framework includes support for the C and C++ programming languages, but there are external projects that provide bindings for other languages:
* Delphi (CEF1) – DCEF 1
* Delphi (CEF3) – DCEF 3
* Delphi (CEF3) – CEF4Delphi
* Delphi (CEF3) – WebKitX CEF3 ActiveX
* Dyalog APL (CEF3) – HTMLRenderer
*
Free Pascal
Free Pascal Compiler (FPC) is a compiler for the closely related programming-language dialects Pascal and Object Pascal. It is free software released under the GNU General Public License, witexception clausesthat allow static linking against i ...
(CEF3) - fpCEF3
* Go (CEF3) – CEF2go
* Java (CEF3) – Java Chromium Embedded
* .NET (CEF1, CEF3) – CefSharp
* .NET (CEF1) – CefGlue
* .NET/Mono (CEF3) – Xilium.CefGlue
* .NET (CEF3) – ChromiumFX
* .NET (CEF3) – WebKitX CEF3 ActiveX
* Python (CEF1, CEF3) – CEF Python
* Swift (CEF3) – CEF.swift
* Visual Basic 6 (CEF3) – WebKitX CEF3 ActiveX
* Visual FoxPro (CEF3) – WebKitX CEF3 ActiveX
* PowerBuilder (CEF3) – WebKitX CEF3 ActiveX
* Ruby (via the 'win32ole' library) (CEF3) – WebKitX CEF3 ActiveX
* Visual Basic for Applications 2003/2007/2010/2015/2016 (VBA, Access, Excel) (CEF3) – WebKitX CEF3 ActiveX
* Microsoft Visual Studio .NET 2010/2015/2017 (VB.Net, C#, C++, 32-bit and 64-bit) (CEF3) – WebKitX CEF3 ActiveX
* Xojo (for Windows apps, 32-bit and 64-bit) (CEF3) – WebKitX CEF3 ActiveX
* Qt (any Windows version, only for 32-bit) (CEF3) – WebKitX CEF3 ActiveX
* CodeTyphon Studio -package pl_CEF
* Embarcadero RAD Studio (VCL C++) (CEF3) - WebKitX CEF3 ActiveX
* Broadcom CA PLEX (VBScript / C++) (CEF3) - WebKitX CEF3 ActiveX
* YallFramework (YS /WS ) (FF213 - WevKitX CEF57 ActiveX)
Applications using CEF
*
4D – relational database management system and IDE
*
Adobe
Adobe ( ; ) is a building material made from earth and organic materials. is Spanish for '' mudbrick''. In some English-speaking regions of Spanish heritage, such as the Southwestern United States, the term is used to refer to any kind of ...
**
Adobe Acrobat
Adobe Acrobat is a family of application software and Web services developed by Adobe Inc. to view, create, manipulate, print and manage Portable Document Format (PDF) files.
The family comprises Acrobat Reader (formerly Reader), Acrobat (former ...
**
Adobe Illustrator
Adobe Illustrator is a vector graphics editor and design program developed and marketed by Adobe Inc. Originally designed for the Apple Macintosh, development of Adobe Illustrator began in 1985. Along with Creative Cloud (Adobe's shift to month ...
–
vector graphics editor
A vector graphics editor is a computer program that allows users to compose and edit vector graphics images interactively on a computer and save them in one of many popular vector graphics formats, such as EPS, PDF, WMF, SVG, or VML.
Vector ...
**
Adobe Creative Cloud
Adobe Creative Cloud is a set of applications and services from Adobe Inc. that gives subscribers access to a collection of software used for graphic design, video editing, web development, photography, along with a set of mobile applications ...
**
Adobe Dreamweaver
Adobe Dreamweaver is a proprietary web development tool from Adobe Inc. It was created by Macromedia in 1997 and developed by them until Macromedia was acquired by Adobe Systems in 2005.
Adobe Dreamweaver is available for the macOS and Windows ...
– web development tool which uses CEF to control resource loading, navigation and context menus Adobe Chromium Embedded
**
Adobe Edge Animate – multimedia authoring tools
**
Adobe Edge Reflow – web design tool
**
Adobe Brackets – previously closed-source IDE
*
AIM – instant messaging client that uses CEF on Windows
* alt:V - multiplayer engine for PC game
Grand Theft Auto V
''Grand Theft Auto V'' is a 2013 action-adventure game developed by Rockstar North and published by Rockstar Games. It is the seventh main entry in the Grand Theft Auto, ''Grand Theft Auto'' series, following 2008's ''Grand Theft Auto IV'', and ...
*
Amazon Music Player – official media player for
Amazon Music
Amazon Music (previously Amazon MP3) is a music streaming platform and online music store operated by Amazon. Launched in public beta on September 25, 2007, in January 2008 it became the first music store to sell music without digital rights ma ...
*
AOL Desktop
AOL (stylized as Aol., formerly a company known as AOL Inc. and originally known as America Online) is an American web portal and online service provider based in New York City. It is a brand marketed by the current incarnation of Yahoo! In ...
– web browser with integrated AOL email and IM clients
*
Autodesk Inventor
Autodesk Inventor is a computer-aided design application for 3D mechanical design, simulation, visualization, and documentation developed by Autodesk.
Features
Inventor allows 2D and 3D data integration in a single environment, creating a virt ...
– 3D design tool. Since version 2015, it uses CEF for the 'My Home' feature, a home-page that allows users to create new CAD files and view tutorials.
* Battle.net App – official client for
Battle.net
Battle.net is an Internet-based online game, social networking service, digital distribution, and digital rights management platform developed by Blizzard Entertainment. The service was launched on December 31, 1996, followed a few days later ...
*
BeamNG.drive – uses CEF to render UI
* Bitdefender Safepay Browser – part of Bitdefender Internet Security software
*
Brackets
A bracket is either of two tall fore- or back-facing punctuation marks commonly used to isolate a segment of text or data from its surroundings. Typically deployed in symmetric pairs, an individual bracket may be identified as a 'left' or ' ...
– open source code editor for the web
* Desura client – official client for
Desura
Desura was a digital distribution
Digital distribution, also referred to as content delivery, online distribution, or electronic software distribution, among others, is the delivery or distribution of digital media content such as audio, v ...
*
Dish World IPTV – streaming video platform
* Dyalog
APL – Uses CEF for its user commands
]HTML
,
]Plot
, and
]APLCart
* Epic Games Launcher – official client for
Epic Games Store
The Epic Games Store is a digital video game storefront for Microsoft Windows and macOS, operated by Epic Games. It launched in December 2018 as both a website and a standalone launcher, of which the latter is required to download and play ga ...
* Eve Online launcher – official launcher for
Eve Online
''Eve Online'' (stylised ''EVE Online'') is a space-based, persistent world massively multiplayer online role-playing game (MMORPG) developed and published by CCP Games. Players of ''Eve Online'' can participate in a number of in-game professi ...
*
ExpanDrive – network file system client
*
Facebook Messenger
Messenger is a proprietary instant messaging app and platform developed by Meta Platforms. Originally developed as Facebook Chat in 2008, the company revamped its messaging service in 2010, released standalone iOS and Android apps in 2011, and ...
for Windows
*
Foxmail
Foxmail is a freeware e-mail client developed by Tencent.
History
Foxmail was originally written by Allen Zhang (张小龙), an alumnus of Huazhong University of Science and Technology in Wuhan. Foxmail was acquired in 2005 by Tencent Holdings.
...
– freeware email client by
Tencent
Tencent Holdings Ltd. () is a Chinese multinational technology and entertainment conglomerate and holding company headquartered in Shenzhen. It is one of the highest grossing multimedia companies in the world based on revenue. It is also the wo ...
*
GOG Galaxy
GOG.com (formerly Good Old Games) is a digital distribution platform for video games and films. It is operated by GOG sp. z o.o., a wholly owned subsidiary of CD Projekt based in Warsaw, Poland. GOG.com delivers DRM-free video games through ...
– official client for
GOG.com
*
Google Web Designer
Google Web Designer is a drag-and-drop page builder for Windows, Mac and Linux from Google for creating interactive HTML5 ads and other HTML5 content. It offers a GUI with common design tools, such as a Text tool that integrates with Google We ...
– create interactive HTML5 sites and ads
*
Grand Theft Auto Online
''Grand Theft Auto Online'' is an online multiplayer action-adventure game developed by Rockstar North and published by Rockstar Games. It was released on 1 October 2013 for PlayStation 3 and Xbox 360, 18 November 2014 for PlayStation 4 and X ...
– multiplayer engine for PC game
Grand Theft Auto V
''Grand Theft Auto V'' is a 2013 action-adventure game developed by Rockstar North and published by Rockstar Games. It is the seventh main entry in the Grand Theft Auto, ''Grand Theft Auto'' series, following 2008's ''Grand Theft Auto IV'', and ...
*
Intel AppUp Encapsulator – Intel app store software
*
KKBox – streaming music platform
* League of Legends launcher – official launcher for
League of Legends
''League of Legends'' (''LoL''), commonly referred to as ''League'', is a 2009 multiplayer online battle arena video game developed and published by Riot Games. Inspired by ''Defense of the Ancients'', a custom map for ''Warcraft III'', Ri ...
*
LiveCode – multi-platform app development software
*
Mailbird
Mailbird is a desktop email client (email management application) for Windows 7, 8, 10, and 11 for sending and receiving emails, managing calendar events and contacts from different email providers, including Outlook, Gmail, Yahoo Mail, etc. ...
– Windows email software
*
MATLAB
MATLAB (an abbreviation of "MATrix LABoratory") is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementa ...
– Uses CEF for its
uifigures
*
MediaMan – organizer software
*
Microsoft Power BI – Business Intelligence software
* Minecraft Launcher – official launcher for
Minecraft
''Minecraft'' is a sandbox game developed by Mojang Studios. The game was created by Markus "Notch" Persson in the Java programming language. Following several early private testing versions, it was first made public in May 2009 before bein ...
*
Multi Theft Auto – multiplayer engine for PC game
Grand Theft Auto: San Andreas
*
OBS Studio browser plugin - Live streaming software
PHP Desktop– provide a way for developing native desktop GUI applications using web technologies such as PHP, HTML5, JavaScript and SQLite.
*
PokerStars
PokerStars is an online poker cardroom that was a part of The Stars Group until it was sold to Flutter Entertainment on May 5, 2020. It can be accessed through downloadable poker clients for the Windows, macOS, Android and iOS. It is the ...
– online poker
cardroom
A cardroom or card room is a gaming establishment that exclusively offers card games for play by the public. The term poker room is used to describe a dedicated room in casinos that is dedicated to playing poker and in function is similar to a ...
*
QuarkXPress
QuarkXPress is a desktop publishing software for creating and editing complex page layouts in a WYSIWYG (What You See Is What You Get) environment. It runs on macOS and Windows. It was first released by Quark, Inc. in 1987 and is still owned and ...
– JavaScript support
* RAGE Multiplayer - multiplayer engine for PC game
Grand Theft Auto V
''Grand Theft Auto V'' is a 2013 action-adventure game developed by Rockstar North and published by Rockstar Games. It is the seventh main entry in the Grand Theft Auto, ''Grand Theft Auto'' series, following 2008's ''Grand Theft Auto IV'', and ...
*
Rockstar Games Launcher – official client for
Social Club
A social club may be a group of people or the place where they meet, generally formed around a common interest, occupation, or activity. Examples include: book discussion clubs, chess clubs, anime clubs, country clubs, charity work, crimin ...
*
Second Life
''Second Life'' is an online multimedia platform that allows people to create an avatar for themselves and then interact with other users and user created content within a multi player online virtual world. Developed and owned by the San Fra ...
– online virtual world
*
Sling TV
Sling TV is an American streaming television service operated by Sling TV LLC, a wholly-owned subsidiary of Dish Network. Unveiled on January 5, 2015, at the Consumer Electronics Show, the virtual multichannel video programming distributor a ...
– IPTV service operated by Dish Network.
*
Spotify
Spotify (; ) is a proprietary Swedish audio streaming and media services provider founded on 23 April 2006 by Daniel Ek and Martin Lorentzon. It is one of the largest music streaming service providers, with over 456 million monthly active us ...
Desktop Client – streaming music platform
*
StarUML
StarUML is a software engineering tool for system modeling using the Unified Modeling Language, as well as Systems Modeling Language, and classical modeling notations. It is published by MKLabs and is available on Windows, Linux and MacOS.
Hi ...
– UML model editor
* Steam client – official client for
Steam
Steam is a substance containing water in the gas phase, and sometimes also an aerosol of liquid water droplets, or air. This may occur due to evaporation or due to boiling, where heat is applied until water reaches the enthalpy of vaporizat ...
*
Tencent QQ
Tencent QQ (), also known as QQ, is an instant messaging software service and web portal developed by the Chinese technology company Tencent. QQ offers services that provide Social network game, online social games, Online music store, music, Onl ...
– instant messaging program (its QPlus part) and web browser
*
TouchDesigner - creative development platform
*
TOWeb – responsive website creation software
*
Trend Micro Internet Security – antivirus software
* Ubisoft Connect client – official client for
Ubisoft Connect
*
UBot Studio – internet marketing and web automation software
*
Uniface – Uniface runtime and development environment
*
Unity
Unity may refer to:
Buildings
* Unity Building, Oregon, Illinois, US; a historic building
* Unity Building (Chicago), Illinois, US; a skyscraper
* Unity Buildings, Liverpool, UK; two buildings in England
* Unity Chapel, Wyoming, Wisconsin, US; a ...
– game engine
*
Unreal Engine
Unreal Engine (UE) is a 3D computer graphics game engine developed by Epic Games, first showcased in the 1998 first-person shooter game '' Unreal''. Initially developed for PC first-person shooters, it has since been used in a variety of genr ...
– game engine
*
Xojo – uses CEF with its HTMLViewer control on Windows
See also
*
Electron
The electron (, or in nuclear reactions) is a subatomic particle with a negative one elementary electric charge. Electrons belong to the first generation of the lepton particle family,
and are generally thought to be elementary partic ...
*
Qt WebEngine
*
XULRunner
XULRunner is a discontinued, packaged version of the Mozilla platform to enable standalone desktop application development using XUL, developed by Mozilla. It replaced the ''Gecko Runtime Environment'', a stalled project with a similar purpose. ...
*
DotNetBrowser
References
External links
* {{Official website, https://bitbucket.org/chromiumembedded/cef
C++ software
Free software
Google Chrome