#browser #framework #cross-platform-gui #cef #engine #webview2 #browser-window

browser-window-c

Browser framework functionality for BrowserWindow written in C/C++

21 unstable releases (3 breaking)

0.3.2 Mar 16, 2024
0.2.2 Mar 6, 2024
0.0.10 Oct 15, 2021
0.0.6 Mar 25, 2021

#1 in #cef


Used in 2 crates

MIT license

235KB
7.5K SLoC

Rust 6K SLoC // 0.0% comments C 1K SLoC // 0.1% comments C++ 752 SLoC // 0.1% comments Shell 1 SLoC // 0.8% comments

BrowserWindow

BrowserWindow is a simple Rust crate for utilizing a browser engine to create a graphical user interface. Just like Electron.js, you can use it to build a GUI with HTML, CSS & JS, or just to have some basic browser functionality at your disposal.

Introduction

BrowserWindow is designed to be easy to use, and work cross-platform. It utilizes the async/await syntax & it even has optional thread-safe handles. There are currently three different underlying browser frameworks that can be selected: CEF, WebkitGTK or Edge WebView2. Each framework has their pros and cons, but CEF will be the most feature complete because it has the best cross-platform support and the browser engine is regularely updated. However, if you only need some very basic functionality, the other frameworks are easier to set up.

You can look at some examples to get an idea how you can use the api.

Getting Started

The underlying browser framework does need some things to be set up on your system (although Edge WebView2 may out-of-the-box on newer Windows installations). But otherwise there is a guide to get you started with using BrowserWindow on your system.

License

This software is available as open source software under a MIT license, for maximum freedom and minimum restrictions.

Missing a feature?

At the moment, there is a decent set of basic functionality available, but if you need something that isn't there yet, please submit an issue for it.

No runtime deps

~0–2MB
~41K SLoC