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.

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 "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,, shader modules.
@luma.gl/tablesOptionalGPU-resident table primitives, batching, table-backed rendering, and table-oriented compute.
@luma.gl/arrowOptionalApache Arrow adapters for deriving GPU layouts and building GPU table objects from Arrow data.
@luma.gl/textOptionalExperimental GPUVector-based 2D text conversion and renderer models.
@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.

Start Here