Skip to main content

Overview

luma.gl is packaged and published as a suite of composable npm modules, so that applications can choose what functionality they need.

ModuleUsageDescription
@luma.gl/coreRequiredThe "Abstract" Device API (implemented by both the webgpu and webgl modules).
@luma.gl/webglRequired *Device adapter implemented using the WebGPU API. Enables creation of WebGPU resources
@luma.gl/webgpuRequired *Device adapter implemented using the WebGL API. Enables creation of WebGL resources.
@luma.gl/engineRecommendedA set of WebGPU/WebGL independent core 3D engine style classes built on top of @luma.gl/core.
@luma.gl/shadertoolsRecommendedSystem for modularizing and composing shader code, shader module system, transpiler, shader modules.
@luma.gl/gltfOptionalglTF scenegraph loading and instantiation etc.
@luma.gl/test-utilsOptionalTest setups, in particular support for rendering and comparing images.

* At least one backend, either WebGL or WebGPU, must be installed to enable GPU resource creation.

luma.gl also publishes a legacy moduls that should be avoided in new applications.

Legacy ModuleStatusDescriptionReplacement
@luma.gl/constantsDeprecatedWebGL constants.No longer used in luma.gl v9.