크로미움 임베디드 프레임워크(Chromium Embedded Framework, CEF)는 구글 크로미움(Chromium) 프로젝트 기반의 웹 브라우저 엔진을 데스크톱 애플리케이션에 내장할 수 있도록 하는 오픈 소스 프레임워크이다. BSD 스타일의 라이선스를 따른다.
주요 특징은 다음과 같다.
- 크로스 플랫폼 지원: 윈도우(Windows), 맥OS(macOS), 리눅스(Linux) 등 주요 운영체제에서 동작한다.
- 언어 바인딩: C/C++ 핵심 라이브러리 외에도 C, 파이썬(Python), 루비(Ruby), 고(Go), 자바(Java), .NET(C#) 등 다양한 프로그래밍 언어에서 사용할 수 있는 바인딩을 제공하거나 서드파티 프로젝트를 통해 지원된다.
- 멀티프로세스 아키텍처: 크로미움과 유사하게 브라우저 프로세스(메인 프로세스)와 렌더러 프로세스(웹 콘텐츠 처리)를 분리하여 안정성과 보안성을 높인다.
- 자바스크립트 바인딩: 네이티브 애플리케이션 코드(C++ 등)와 자바스크립트 컨텍스트 간의 양방향 통신(함수 호출, 객체 노출 등)을 지원하여 하이브리드 애플리케이션 개발을 용이하게 한다.
- 렌더링 제어: 오프스크린 렌더링(OSR, Off-Screen Rendering) 모드를 제공하여 GPU 가속 렌더링 결과를 텍스처나 비트맵으로 가져와 자체 UI 프레임워크(예: Unity, Unreal Engine, Qt, WPF 등)에 통합할 수 있다.
주요 용례로는 Electron, NW.js(구 node-webkit) 같은 크로스 플랫폼 데스크톱 앱 프레임워크의 기반 기술로 쓰이거나, 어도비 크리에이티브 클라우드(Adobe Creative Cloud), 스팀(Steam) 클라이언트, 스포티파이(Spotify) 데스크톱 앱, 유니티(Unity) 에디터 내 웹 뷰, 마이크로소프트 팀즈(Microsoft Teams) 초기 버전 등 다수의 상용 소프트웨어에 내장되어 웹 기반 UI를 구현하는 데 활용된다.