Skip to main content

Overview

luma.gl combines published, composable npm modules with private experimental packages under active development. Applications can choose the rendering, compute, and visualization functionality they need while checking the maturity of each package.

Use the API reference when you want the class-by-class reference pages for a specific module. If you are looking for conceptual guides or an introduction to how the pieces fit together, start in the API Guide and then come back here for the detailed type and method docs.

If you are looking for Model, start with @luma.gl/engine. The Model class lives in the engine module and is one of the main entry points for rendering in luma.gl.

ModuleUsageDescription
@luma.gl/coreRequiredThe portable Device API, shader types, and WebGPU and WebGL2 implementations.
@luma.gl/core/webglCore subpathDevice adapter implemented using the WebGL API. Enables creation of WebGL resources.
@luma.gl/core/webgpuCore subpathDevice adapter implemented using the WebGPU API. Enables creation of WebGPU resources.
@luma.gl/engineRecommendedA set of WebGPU/WebGL independent core 3D engine style classes built on top of @luma.gl/core.
@luma.gl/anariExperimental / PrivateANARI-inspired retained scene objects, instanced rendering, lights, materials, and HDR.
@luma.gl/shadertoolsRecommendedReusable shader modules, portable shader assembly, and application-defined shader hooks.
@luma.gl/slangExperimental (v10)Optional TypeScript transpilation of a documented Slang shader subset to GLSL and WGSL.
@luma.gl/effectsOptionalComposable post-processing effects, screen-space lighting, and reusable shader-pass pipelines.
@luma.gl/gpgpuOptionalPortable GPU evaluation plus experimental gpu-data, gpu-core, and gpu-graph subpaths.
@luma.gl/arrowExperimental / PrivateApache Arrow adapters for GPU layouts and GPU table objects from Arrow data.
@luma.gl/textExperimentalTextRenderer facade and caller-owned GPU text data.
@luma.gl/splatsExperimental / PrivateGaussian splat rendering and caller-owned prepared GPU splat data.
@luma.gl/experimentalExperimental / PrivateIncubating APIs, including gpu-tables, rendering models, WebXR, and GPU analytics.
@luma.gl/gltfOptionalStandards-first glTF assets, physical materials, character animation, and lossless interchange.
@luma.gl/test-utilsOptionalTest setups, in particular support for rendering and comparing images.

Select at least one adapter from the core backend subpaths when creating a device.

Start Here​