An open API service indexing awesome lists of open source software.

https://github.com/mjakeman/libweb-gtk

[PROOF OF CONCEPT] A cross-platform webview for GTK (GTK wrapper for Ladybird's LibWeb engine)
https://github.com/mjakeman/libweb-gtk

browser browser-engine cross-platform gtk gtk4

Last synced: 10 months ago
JSON representation

[PROOF OF CONCEPT] A cross-platform webview for GTK (GTK wrapper for Ladybird's LibWeb engine)

Awesome Lists containing this project

README

          

# LibWeb for GTK
LibWeb is the SerenityOS Browser Engine that powers the ladybird browser.

It's a new, independent, and portable browser engine that is making incredible progress.

LibWebGTK is akin to WebKitGTK in that it wraps LibWeb for embedding inside GTK based applications.

![A screenshot of the LibWebGTK sample browser on the Ladybird Browser announcement blog post](screenshot.png)

## Status
This is not production ready so use at your own risk.

## Contributing
Interested in contributing? Start a discussion and let's get in touch!

## Building
Clone the repo and check out submodules
```
git clone ...
git submodule update --init --recursive
```

### Command Line
Make a new directory `Build` in the repository root.

From inside that directory, run:

```
cmake .. -GNinja
ninja run demo-browser
```

### CLion Setup
Open the project in CLion and load the CMake file in the repository root.

Find the run configuration named `run`, edit it, set `demo-browser` as the executable.

You are now ready to build and run `libweb-gtk`.

### macOS
On macOS, you will also need `icu4c` in your path. Set the following environment variable

```
# Intel
PKG_CONFIG_PATH="/usr/local/opt/icu4c/lib/pkgconfig"

# M1
PKG_CONFIG_PATH="/opt/homebrew/opt/icu4c/lib/pkgconfig"
```

You can do this in your CMake profile in CLion, or as part of your `.zshrc`.

See: https://www.jetbrains.com/help/clion/cmake-profile.html#EnvVariables

#### Debugging
On macOS, there is no gdb. Instead, use `ninja debug-lldb`.

## Licence
Available under the same licence as SerenityOS (BSD 2-Clause).