Latest NPM release Minzipped size License

glTF 2.0 SDK for JavaScript, TypeScript, and Node.js.


glTF-Transform supports reading, editing, and writing 3D models in glTF 2.0 format. Unlike 3D modeling tools β€”Β which are ideal for artistic changes to geometry, materials, and animation β€” glTF-Transform provides fast, reproducible, and lossless control of the low-level details in a 3D model. The API automatically manages array indices and byte offsets, which would otherwise require careful management when editing files. These traits make it a good choice for bundling, splitting, or optimizing an existing model. It can also be used to apply quick fixes for common issues, to build a model procedurally, or to easily develop custom extensions on top of the glTF format. Because the core SDK is compatible with both Node.js and Web, glTF-Transform may be used to develop offline workflows and web applications alike.

glTF-Transform is modular:

  • @gltf-transform/core: Core SDK, providing an expressive API to read, edit, and write glTF files.
  • @gltf-transform/extensions: Extensions (optional glTF features) for the Core SDK.
  • @gltf-transform/functions: Functions for common glTF modifications, written using the core API.
  • @gltf-transform/cli: CLI to apply functions to glTF files quickly or in batch.

Getting started

To learn how glTF-Transform works, see Concepts. To get started developing with the SDK, see SDK Installation below. Find Functions for example scripts created with the SDK already. To use the commandline interface, see Commandline (CLI). If you're interested in contributing to or customizing the project, see contributing.

SDK Installation

Install the core SDK for programmatic use:

npm install --save @gltf-transform/core

Then, import some modules:

// ES Modules.
import { Document, Scene, WebIO } from '@gltf-transform/core';

// CommonJS.
const { Document, Scene, WebIO } = require('@gltf-transform/core');

All classes described by this documentation are imported from the core package, as shown above. Most projects should start with the Document or PlatformIO classes.


Copyright 2021, MIT License.


See Credits.

Function symbol, f(πŸ“¦) β†’ πŸ“¦, where the argument and output are a box labeled 'glTF'.

Made by Don McCurdy β€’ TypeDoc documentation β€’ Copyright 2021 under MIT license