14 unstable releases (4 breaking)

0.5.3 Nov 16, 2024
0.5.2 Nov 16, 2024
0.4.1 Oct 14, 2024
0.4.0 Sep 7, 2024
0.1.5 Feb 6, 2024

#31 in Rendering

Download history 5/week @ 2024-08-05 20/week @ 2024-08-12 15/week @ 2024-08-19 282/week @ 2024-09-02 17/week @ 2024-09-09 36/week @ 2024-09-16 47/week @ 2024-09-23 162/week @ 2024-09-30 65/week @ 2024-10-07 187/week @ 2024-10-14 68/week @ 2024-10-21 13/week @ 2024-10-28 347/week @ 2024-11-11 106/week @ 2024-11-18

468 downloads per month
Used in iced_webview

Custom license

3MB
10K SLoC

ul-next

Build Crates.io ul-next docs.rs (with version)

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 of semver.

See the CHANGELOG for more information.

Other bindings

Name Status Description
rust-ul Abandoned Low level bindings for Ultralight.
ultralight Active Opinionated Rust bindings for Ultralight.

Extra files

You need to include resources folder in the execution directory.

You can find the resources folder in the Ultralight SDK

Examples

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 the examples directory.

Deployment

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.

License

This project uses the ULTRALIGHT FREE LICENSE AGREEMENT - V1. See LICENSE for more information.

Dependencies

~0.3–7MB
~50K SLoC