High level rust bindings for Ultralight. Alternative for the abandoned rust-ul
.
Ultralight is a lightweight, high-performance HTML rendering engine designed for applications that require a high degree of customization. Using GPU-accelerated HTML rendering, it's a great fit for rendering user interfaces in games, and other applications.
Tested on Windows and Linux.
The API currently resembles the original C++ API for simplicity, and probably it will be changed to be more
rust
idiomatic. Though it shouldn't affect older versions because ofsemver
.See the CHANGELOG for more information.
Name | Status | Description |
---|---|---|
rust-ul |
Abandoned | Low level bindings for Ultralight. |
ultralight |
Active | Opinionated Rust bindings for Ultralight. |
You need to include resources
folder in the execution directory.
You can find the resources folder in the Ultralight SDK
To see how this library is used, please check the examples in the examples
directory.
cargo run --example=basic_app
For now, must be run from the root of the project, as it needs to find the
resources
folder in theexamples
directory.
The samples compiled rely on dynamic libraries provided by Ultralight
:
libUltralightCore.so
/UltralightCore.dll
libUltralight.so
/Ultralight.dll
libWebCore.so
/WebCore.dll
libAppCore.so
/AppCore.dll
These can be downloaded from the Ultralight SDK.
Rust will download them during build as well, but are kept inside the
target
directory.
This project uses the ULTRALIGHT FREE LICENSE AGREEMENT - V1
. See LICENSE for more information.