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 and view the source code, design documents, or content of the product. The open source model is a decentrali ...
software framework
In computer programming, a software framework is a software abstraction that provides generic functionality which developers can extend with custom code to create applications. It establishes a standard foundation for building and deploying soft ...
for embedding a
Chromium
Chromium is a chemical element; it has Symbol (chemistry), symbol Cr and atomic number 24. It is the first element in Group 6 element, group 6. It is a steely-grey, Luster (mineralogy), lustrous, hard, and brittle transition metal.
Chromium ...
web browser
A web browser, often shortened to browser, is an application 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 scr ...
within another
application. This enables
developers to add web browsing functionality to their application, as well as the ability to use
HTML
Hypertext Markup Language (HTML) is the standard markup language for documents designed to be displayed in a web browser. It defines the content and structure of web content. It is often assisted by technologies such as Cascading Style Sheets ( ...
,
CSS, and
JavaScript
JavaScript (), often abbreviated as JS, is a programming language and core technology of the World Wide Web, alongside HTML and CSS. Ninety-nine percent of websites use JavaScript on the client side for webpage behavior.
Web browsers have ...
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 fro ...
(or just portions of it).
CEF runs on
Linux
Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
,
macOS
macOS, previously OS X and originally Mac OS X, is a Unix, Unix-based operating system developed and marketed by Apple Inc., Apple since 2001. It is the current operating system for Apple's Mac (computer), Mac computers. With ...
, and
Windows
Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
. It has many
language binding
In programming and software design, a 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 is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea (a part of Pacific Ocean) to the north. With a population of 156.9 million people (including Madura) in mid 2024, proje ...
, 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 +
V8 JavaScript engine). As of July of 2022, it no longer supports
PPAPI
Google Native Client (NaCl) is a discontinued sandboxing technology for running either a subset of Intel x86, ARM, or MIPS native code, or a portable executable, in a sandbox. It allows safely running native code from a web browser, independe ...
plugins due to removal of PPAPI, legacy Chrome Apps, and
Native Client (NaCl) support from the upstream Chromium project.
PDF
Portable document format (PDF), standardized as ISO 32000, is a file format developed by Adobe Inc., Adobe in 1992 to present documents, including text formatting and images, in a manner independent of application software, computer hardware, ...
viewer support from Chromium's PDFium PDF viewer is still supported. 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,
Cocoa, or
GTK
GTK (formerly GIMP ToolKit and GTK+) is a free software cross-platform widget toolkit for creating graphical user interfaces (GUIs). It is licensed under the terms of the GNU Lesser General Public License, allowing both Free software, free and ...
(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 it ...
(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 (from arabic: الطوب Attub ; ) 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 use ...
**
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 Computer-aided design, design software developed and marketed by Adobe Inc., Adobe. Originally designed for the Apple Inc., Apple Mac (computer), Macintosh, development of Adobe Illustrator began ...
–
vector graphics editor
**
Adobe Creative Cloud
Adobe Creative Cloud is a set of applications and services from Adobe Inc., Adobe that gives subscribers access to a collection of software used for graphic design, video editing, web development, photography, along with a set of mobile applicat ...
**
Adobe Dreamweaver
Adobe Dreamweaver is a proprietary web development tool from Adobe. 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 oper ...
– 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 digital music store operated by Amazon. As of January 2020, the service had 55 million subscribers.
It was the first music store to sell music without digital rights manag ...
*
AOL Desktop – web browser with integrated AOL email and IM clients
*
Autodesk Inventor – 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
*
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. They come in four main pairs of shapes, as given in the box to the right, which also gives their n ...
– open source code editor for the web
* Desura client – official client for
Desura
*
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 video game digital distribution service and storefront operated by Epic Games. It launched in December 2018 as a software client, for Microsoft Windows and macOS, and online storefront. Android and iOS versions of t ...
* Eve Online launcher – official launcher for
Eve Online
*
ExpanDrive – network file system client
*
Foxmail – freeware email client by
Tencent
Tencent Holdings Ltd. ( zh, s=腾讯, p=Téngxùn) is a Chinese Multinational corporation, multinational technology Conglomerate (company), conglomerate and holding company headquartered in Shenzhen. It is one of the highest grossing multimed ...
*
GOG Galaxy – official client for
GOG.com
*
Google Web Designer – create interactive HTML5 sites and ads
*
Grand Theft Auto Online – 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 multiplayer online battle arena video game developed and published by Riot Games. Inspired by ''Defense of the Ancients'', a Mod (video games), custom map for ''Warcraf ...
*
LiveCode – multi-platform app development software
* LockDown Browser - Secure browser for proctored exams
*
Mailbird – 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, implementat ...
– Uses CEF for its
uifigures
*
MediaMan – organizer software
*
Microsoft Power BI – Business Intelligence software
* Minecraft Launcher – official launcher for
Minecraft
''Minecraft'' is a 2011 sandbox game developed and published by the Swedish video game developer Mojang Studios. Originally created by Markus Persson, Markus "Notch" Persson using the Java (programming language), Java programming language, the ...
*
Multi Theft Auto – multiplayer engine for PC game
Grand Theft Auto: San Andreas
*
OBS Studio browser plugin - Live streaming software
*
OnlyOffice – office suite
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. It is the largest real money online poker site in the world, controlling over two-thirds of the total online poker market, and can be accessed through downloadable poker clients for Windows, macOS, Androi ...
– 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 room in casinos that is dedicated to playing poker and in function is similar to a card room.
...
*
PTC Creo – Creo Parametric Chromium embedded browser
*
QuarkXPress
QuarkXPress is 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 p ...
– 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 or social organization may be a group of people or the place where they meet, generally formed around a common interest, occupation or activity with in an organizational association known as a Club (organization), club. Exampl ...
*
Second Life
''Second Life'' is a multiplayer virtual world that allows people to create an Avatar (computing), avatar for themselves and then interact with other users and user-created content within a multi-user online environment. Developed for person ...
– 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 aim ...
– IPTV service operated by Dish Network.
*
Spotify
Spotify (; ) is a List of companies of Sweden, Swedish Music streaming service, audio streaming and media service provider founded on 23 April 2006 by Daniel Ek and Martin Lorentzon. , it is one of the largest providers of music streaming services ...
Desktop Client – streaming music platform
*
StarUML – UML model editor
*
Steam client – official client for
Valve's Steam
*
Team Fortress 2
''Team Fortress 2'' (''TF2'') is a Multiplayer video game, multiplayer first-person shooter game developed and published by Valve Corporation in 2007. It is the sequel to the 1996 ''Team Fortress'' Mod (video gaming), mod for ''Quake (video g ...
- Video game by
Valve
A valve is a device or natural object that regulates, directs or controls the flow of a fluid (gases, liquids, fluidized solids, or Slurry, slurries) by opening, closing, or partially obstructing various passageways. Valves are technically Pip ...
that uses Source Engine
*
Tencent QQ
Tencent QQ (), also known as QQ, is an instant messaging software service and web portal developed by the Mainland Chinese technology company Tencent. QQ offers services that provide online social games, music, shopping, microblogging, movies, ...
– instant messaging program (its QPlus part) and web browser
*
The Bat! – email client by RitLabs for Microsoft Windows
*
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 In archaeology, a uniface is a specific type of stone tool that has been flaked on one surface only. There are two general classes of uniface tools: modified flakes and formalized tools, which display deliberate, systematic modification of the margi ...
– Uniface runtime and development environment
*
Unity – 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 video game '' Unreal''. Initially developed for PC first-person shooters, it has since been used in a variety of ...
– 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 charge, elementary electric charge. It is a fundamental particle that comprises the ordinary matter that makes up the universe, along with up qua ...
*
Qt WebEngine
*
XULRunner
*
DotNetBrowser
References
External links
* {{Official website, https://bitbucket.org/chromiumembedded/cef
Google Chrome
Free software programmed in C++
Cross-platform free software
Free software for Linux
Free software for Windows
Free software for macOS
Software using the BSD license