Architecture

Module Layout

Module Details

AppCore

(Optional) Cross-platform app runtime (source available here), responsible for creating platform windows, handling platform input events, running application event loops, and all platform-specific GPU code.

Ultralight

Responsible for managing Views, high-level rendering, input translation, resource policies, and event dispatch.

WebCore

The core HTML/CSS layout engine (source available here), responsible for parsing resources, applying styles, calculating layout, and transforming the result into a tree of paint nodes (during rendering, we walk the tree and turn this into a GPU command list to be drawn by GPUDriver)

JavaScriptCore

The core JavaScript virtual machine, responsible for everything JS-related.

UltralightCore

Proprietary 2D GPU drawing library, responsible for all low-level graphics routines (paths, fonts, GPU command lists, image cache, etc.).