CEF Quickstart is a lightweight, cross-platform webview application built with C++ and CEF (Chromium Embedded Framework). It provides a simple yet powerful interface for embedding web content within native applications.
- 🚀 Fast Performance: Native C++ backend with optimized web-based frontend
- 🎨 Modern UI: Clean, responsive interface built with React.js and TypeScript
- 🛠️ CMake Integration: Seamless project building and management
cef-quickstart/
├── app/ # C++ application core
│ ├── main.cpp # Application entry point
│ ├── client.cpp # WebView client implementation
├── cef-quickstart/ # TypeScript frontend (React.js + Vite)
│ ├── src/ # Frontend source code
│ └── components/ # React.js components
└── tools/ # Build and utility tools
├── build.ts # CMake build automation
├── clean.ts # Project cleanup utility
└── utils/ # Conversion utilities
- Windows 10/11 with MSVC (Visual Studio 2019 or later)
- CMake 3.25+
- Bun.js (latest version)
- Git with submodule support
git clone https://github.com/arizkami/cef-quickstart.git
cd cef-quickstartbun install# Build frontend
bun run build
# build all
bun run build:win.\build\Release\cef-quickstart.exebun run dev- Start development server for frontendbun run build- Build production frontendbun run preview- Preview built frontendbun run build:cmake <project>- Build specific CMake projectbun run clean:cmake <project>- Clean specific CMake projectbun run buildtobin- Convert HTML to C++ binarybun run iconconvert- Convert PNG to ICO format
Built with React.js, TypeScript, and Vite for fast development and optimal performance.
C++ application using:
- Chromium Embedded Framework (CEF) for rendering the frontend
- Binary Resource Provider for embedded web assets
- Logger for debugging and diagnostics
Custom TypeScript build tools provide:
- Automated CMake builds with proper configuration
- Project cleanup with selective artifact removal
- Resource conversion from web assets to C++ binaries
- Cross-platform compatibility (Windows focus)
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Use Bun.js for all JavaScript/TypeScript operations
- Use CMake for all C++ builds (MSVC on Windows)
- Follow existing code style and conventions
- Add tests for new features
- Update documentation as needed
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with modern C++ and TypeScript
- Powered by CMake and Bun.js
- LSP integration for enhanced development experience
- Chromium Embedded Framework for seamless web-native integration
CEF Quickstart - WebView with native performance
