Web ligthning is work in progress WASM/WegGL web framework that aims to replace the classical DOM element creation and manipulation with JS and CSS in order to create web GUI. Instead everything should be rendered on a single WebGL canvas. This should in principle avoid the bloated DOM manipulation, give the ability to do complex effects cheaply on the GPU, and rasterize all the fonts on the GPU as well (having an advantage when zooming over the CPU rasterization used by browsers).
For WebAssembly/WebGL builds:
emcmake cmake -B build && cmake --build build -j `nproc`
For Desktop/WebGL
cmake -B build && cmake --build build -j `nproc`
- General WebGL rendering interface.
- CPU font rendering.
- GPU font rendering.
- GPU bezier curve rendering.
- CPU general 2D vector rendering.
- GPU general 2D vector rendering.
- API for 3D rendering
- Boxes
- Containers
- Grids
- Buttons
- Progress Indicators
- Sliders
- Menus
- Images
- Canvases
- Input Fields
- Per-widget per-frame arbitrary property animation chains.
- Bezier curve particle traversal.
- Lizard compressed data.
- WebP images.
- SVG images.
- Avif images.
- AV1 streams.