Chromium Embedded Framework
![]() |
|
| Developer(s) | Marshall Greenblatt |
|---|---|
| Initial release | June 1, 2009 |
| Stable release | 3.1750.1738 / June 12, 2014 |
| Development status | Active |
| Written in | C++ |
| Operating system | Windows Linux Mac OS X |
| Type | Framework, Web browser |
| License | New BSD License (see BSD licenses) |
| Website | code.google.com/p/chromiumembedded/ |
The Chromium Embedded Framework (CEF) is an open source framework for embedding a web browser control based on Chromium. It is a convenient way to implement an HTML5 based GUI in a desktop application or to provide browser capabilities to an application, and provides the infrastructure developers need to quickly add HTML renderer and JavaScript to a C++ project. It also comes with bindings for C, C++, Delphi, Go, Java, .NET, Python and runs on Linux, Mac OS X, and Windows.
Overview[edit]
There are two versions of Chromium Embedded Framework: CEF 1 and CEF 3.[1] Development of CEF 2 was abandoned after the appearance of the Chromium Content API.[2]
CEF 1 is a single-process implementation based on the Chromium WebKit API. It is no longer actively developed or supported.[3]
CEF 3 is a multi-process implementation based on the Chromium Content API and has performance similar to Google Chrome.[4] It uses asynchronous messaging to communicate between the main application process and one or more render processes (Blink + V8 JavaScript engine). It supports both NPAPI & PPAPI plugins. A single-process run mode is supported for debugging purposes only.[5]
CEF comes with a sample application called CefClient that is written in C++ using WinApi, Cocoa, or GTK (depending on the platform) and contains demos of various features.[6][7] Newer versions include a sample application called CefSimple that, along with an accompanying tutorial, show how to create a simple application using CEF 3.[8]
Documentation can be found in the header files located in the "include" directory[9][10] and on wiki pages.[11]
Supported languages[edit]
The base CEF framework includes support for the C and C++ programming languages, but there are other ports available:
- Delphi (CEF1) - DCEF 1[12]
- Delphi (CEF3) - DCEF 3[13]
- Go (CEF3) - CEF2go[14]
- Java (CEF1, CEF3) - Java Chromium Embedded[15]
- .NET (CEF1, CEF3) - CefSharp[16]
- .NET (CEF1) - CefGlue[17]
- .NET/Mono (CEF3) - Xilium.CefGlue[18]
- Python (CEF1, CEF3) - CEF Python[19]
Applications using CEF[edit]
- Brackets - code editor for the web
- Adobe Edge Animate - multimedia authoring tool
- Adobe Edge Reflow - responsive web design tool
- Adobe Dreamweaver CC - web design software
- Alpha Anywhere - web application development tool
- Amazon Music - media player for PC and Mac
- AppJS - build desktop applications using Node.js[20]
- AOL Instant Messenger - instant messaging client that uses CEF on Windows
- Atom - open-source text and source code editor by GitHub
- Battle.net Client -
- Chromium Tab - another Chromium inside Chrome Chromium Tab extension
- Cubiez - integrates content into the desktop[21]
- Desura - online game platform
- Dish World IPTV - streaming video platform
- Evernote - notetaking software
- Eve Launcher - launcher for Eve Online on Mac OS X,[22] beta launcher on Windows
- ExeOutput - allows deploying HTML5/PHP applications as desktop applications[23]
- ExpanDrive - network file system client
- Facebook Messenger for Windows
- Free Download Manager 5.0 Alpha - free downloads manager (alpha version)
- JMS4 - program for joinery companies
- GitHub for Windows - GitHub client software for Windows
- Google Web Designer - create interactive HTML5 sites and ads
- Inky - smart email app
- Intel AppUp Encapsulator - Intel app store software
- Janetter - Twitter client software[24]
- Key4Two - hardware-level secured sharing network (cefpython)[25]
- mChef - mIRC browser plugin[26]
- MediaMan - organizer software
- MetaVR - geographic simulation software[27]
- MTG Studio - game organizer software[28]
- OpenSpace3D - 3D development platform[29]
- PHP Desktop - develop desktop applications using PHP, HTML 5, Javascript and SQLite[30]
- PokerStars - the largest online poker cardroom in the world
- Qobuz Desktop - HD download and streaming music platform[31]
- Rdio - streaming music platform
- Spotify - streaming music platform
- MEO Music - streaming music application [32]
- Steam Client - online game platform
- Telebreeze player - multiplatform streaming video player[33]
- Tencent QQ - instant messaging program (its QPlus part) and web browser
- Trend Micro - internet security software
- Uplay - online game platform
- WBEA Desktop - allows deploying HTML5 applications as desktop applications[34]
- yasoon - app store & platform for Microsoft Outlook
- Macaw Web Editor - commercial WYSIWYG editor used for web development
References[edit]
- ^ "Versions - Overview of the CEF architecture.". code.google.com. Retrieved 28 December 2012.
- ^ "Content API - The Chromium Projects".
- ^ "CEF1 Retirement Plan".
- ^ "CEF 3 Architecture - CEF wiki pages".
- ^ "Single process - Process Models- The Chromium Projects".
- ^ "CEF SVN: trunk/cef1/tests/cefclient/".
- ^ "CEF SVN: trunk/cef3/tests/cefclient/".
- ^ "CefSimple Tutorial".
- ^ "CEF SVN: /trunk/cef1/include/". Code.google.com. Retrieved 2012-12-26.
- ^ "CEF SVN: /trunk/cef3/include/". Code.google.com. Retrieved 2012-12-26.
- ^ "CEF Wiki Pages". Code.google.com. Retrieved 2012-12-27.
- ^ "delphichromiumembedded - Delphi Chromium Embedded - Google Project Hosting". code.google.com. Retrieved 2012-12-26.
- ^ "dcef3 - Delphi Chromium Embedded 3 - Google Project Hosting". Code.google.com. Retrieved 2012-12-26.
- ^ "HTML 5 based GUI toolkit for the Go language". Retrieved 2014-02-06.
- ^ "javachromiumembedded - Java Wrapper for the Chromium Embedded Framework (CEF) - Google Project Hosting". Code.google.com. Retrieved 2012-12-26.
- ^ "chillitom/CefSharp · GitHub". Github.com. Retrieved 2012-12-26.
- ^ "fddima / CefGlue / wiki / Home — Bitbucket". Bitbucket.org. 2012-08-21. Retrieved 2012-12-26.
- ^ "xilium / Xilium.CefGlue / wiki / Home — Bitbucket". Bitbucket.org. 2012-10-10. Retrieved 2012-12-26.
- ^ "cefpython - Python bindings for Chrome / Chromium Embedded Framework (CEF) - Google Project Hosting". Code.google.com. Retrieved 2012-12-26.
- ^ "AppJS".
- ^ "Cubiez". Retrieved 4 March 2013.
- ^ "Eve Launcher - Evelopedia". Retrieved 4 March 2013.
- ^ "ExeOutput for PHP". Retrieved 4 March 2013.
- ^ "Janetter". Retrieved 4 March 2013.
- ^ "Key4Two - i-Patrol Technology LLC". Retrieved 25 May 2013.
- ^ "mChef - mIRC browser plugin". Retrieved 4 March 2013.
- ^ "MetaVR". Retrieved 4 March 2013.
- ^ "MTG Studio". Retrieved 4 March 2013.
- ^ "OpenSpace3D". Retrieved 4 March 2013.
- ^ "PHPDesktop".
- ^ "Quobuz Desktop". Retrieved 4 March 2013.
- ^ "SAPO MEO Music". Retrieved 22 October 2013.
- ^ "Telebreeze".
- ^ "WBEA Desktop". Retrieved 4 March 2013.
