A Rust-based framework for building desktop applications using the Chromium Embedded Framework (CEF).
Huly CEF provides a set of Rust crates and tools for creating cross-platform desktop applications with web technologies. It includes WebSocket-based communication, instance management, and TypeScript client libraries.
- Rust (latest stable version)
- Node.js and npm (for TypeScript client)
- Docker (optional, for running the manager in a container)
| Crate Name | Description |
|---|---|
huly-cef |
Core library for interacting with the Chromium Embedded Framework (CEF) |
huly-cef-helper |
macOS-specific helper app required for proper bundle packaging |
huly-cef-tools |
Utility crate providing tools and helpers for building huly-cef apps |
huly-cef-websockets |
WebSocket-based server for streaming and interacting with CEF browser views |
huly-cef-manager |
A RESTful server that manages Huly CEF instances |
To build and run Huly CEF Websockets, use:
-
Build Huly CEF Websockets
cargo run --bin huly-cef-build --release -- --profile release
-
Run Huly CEF Websockets
Linux:./target/release/huly-cef-websockets --cache-path cache/default
Windows:
./target/release/huly-cef-websockets.exe --cache-path cache/default
macOS:
./target/release/huly-cef-websockets.app/Contents/MacOS/huly-cef-websockets --cache-path cache/default
-
Build The Package
To build the package, use the following command:cd ./packages/cef-client npm install npm run build -
Link The Package
To link the package, use the following command:npm link
-
Use The Package In Your Project
To use the package in your project, run the following command in the project's folder:npm link cef-client
-
Publish The Package To publish the package, use the following command:
npm publish