Skip to content
CAI
Produce a survey ↗Verify a survey

mrdoob/three.js

This system is a comprehensive 3D graphics library and development environment that provides a modern, node-based shading language (TSL) alongside traditional material and geometry APIs. It supports rendering via both WebGL and WebGPU backends, offering advanced features like clustered lighting, post-processing effects, and physics integration. The codebase also includes a robust editor for scene manipulation, a suite of utility classes for math, animation, and audio, and a collection of examples and assets for testing and demonstration.

45.9

Weak · 6 August 2026

666k

lines of production code

JavaScript

primary language

5

bus factor · 2,472 authors in all

2

measurements over time

CAI band scale
CAI trend line

How it got here

2010–2015 · ES6 class refactoring and modernization

This period was defined by a comprehensive refactoring of the codebase to ES6 classes, covering core systems like cameras, lights, materials, and animations. The project also expanded its feature set with new rendering capabilities, texture formats, and an enhanced editor interface, while establishing modern development standards through modular entry points and improved code organization.

42 changes

2016–2020 · ES6 modularization and example expansion

This period focused on modernizing the codebase by converting legacy code to ES6 modules and TypeScript, particularly for loaders, exporters, and renderers. The team significantly expanded the examples directory with new 3D models, textures, and utility classes, while also introducing WebXR support and advanced physics engine integrations.

51 changes

2021–2024 · Node-based rendering and WebGPU backend

This period focused on introducing a comprehensive node-based shading language (TSL) and a parallel WebGPU rendering backend alongside the existing WebGL implementation. The work involved building out the entire node architecture, including lighting, materials, and post-processing effects, while also establishing a unified renderer interface for both backends.

45 changes

2025–2026 · WebGPU and TSL feature expansion

This period focused on expanding the WebGPU renderer with advanced lighting systems, including clustered and dynamic lighting, alongside a comprehensive set of TSL (Three Shading Language) utilities for shading and effects. The work also introduced a new Inspector tool for debugging and profiling, alongside refactoring loaders and adding procedural generation examples.

22 changes

CAI lens gauges

Survey your own repository

mrdoob/three.js was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point the surveyor at a repository you know and see whether you agree with it.

Survey a repository

About this page

  • The description of this project is derived from its own commit history, not from its README.
  • The score is its highest published measurement, taken on 6 August 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit 19567418fa — the exact code this score is about.
  • Scored under rubric rubric-2026.08.19. Score the same commit under that rubric and you get the same number.
CAI link cards