luma.gl | Docs
Portable WebGPU and WebGL rendering, GPU compute, and open 3D assets.
WebGPU logo by W3C, licensed under CC BY 4.0. Khronos marks belong to The Khronos Group.
Overview
luma.gl is a modular GPU toolkit for the web. Its portable device API stays close to WebGPU while supporting both WebGPU and WebGL 2, from low-level shaders and resources to physically based scenes, open 3D assets, animation, and data visualization.
- Portable graphics resources, render pipelines, and compute capabilities where WebGPU supports
- Composable GLSL/WGSL shader modules, physically based materials, lighting, and image-based
- Shared scenegraph, animation, morph-target, model, and resource-management primitives.
- First-class glTF 2.0 assets, physical materials, skeletal/morph animation, and supported glTF
- An experimental, private retained scene interface built in the spirit of the ANARI object model.
Standards identity: The private @luma.gl/scenes workspace is independently developed and
inspired by concepts from the Khronos ANARI standard. It is not an official ANARI implementation, is not certified or
conformant, and is not affiliated with or endorsed by The Khronos Group. glTF, WebGL, and ANARI
trademarks belong to their respective owners.
While generic enough to be used for general 3D rendering, luma.gl's mandate is primarily to support GPU needs of data visualization frameworks in the vis.gl suite, such as:
- kepler.gl a powerful open source geospatial analysis tool for large-scale data sets
- deck.gl a WebGL-powered framework for visual exploratory data analysis of large data sets
- streetscape.gl A visualization toolkit for autonomy and robotics data encoded in the XVIZ protocol
Installation, Running Examples etc
For details, please refer to the extensive online website.