three.js

Из публичных источников

three.js — JavaScript-библиотека для 3D с открытым кодом (лицензия MIT), которая упрощает создание WebGL- и WebGPU-сцен в браузере.

БиблиотекаКатегория: Библиотеки и SDK · Анимация и 3DOpen sourceданные проверены 15 окт. 2026 г.

Обзор

Создание 3D-графики для веба обычно означает прямую работу с низкоуровневым WebGL, что многословно и непросто. three.js предлагает более высокоуровневый слой: сцены, камеры, геометрии, материалы и рендереры, которые берут на себя детали работы с GPU, позволяя разработчикам сосредоточиться на том, что отображается на экране. Библиотека включает рендереры WebGL и WebGPU, а рендереры SVG и CSS3D доступны как дополнения. Разработчики создают объекты, назначают им материалы и анимируют их в цикле рендеринга, как показано в базовом примере использования. Проект предоставляет примеры, документацию, руководство и гайд по миграции. three.js ориентирован на веб-разработчиков, creative-кодеров и команды, создающие интерактивные визуализации, игры или просмотрщики товаров. Библиотека распространяется по лицензии MIT и устанавливается как npm-пакет или подключается напрямую в браузере.
  • 3d
  • animation
  • augmented-reality
  • canvas
  • html5
  • javascript
  • svg
  • virtual-reality
  • webaudio
  • webgl
  • webgl2
  • webgpu

Установка

Команды только показываются, маркетплейс их не выполняет. Сверяйтесь с официальной документацией.
  • Официальный сайтИз публичных источниковиз метаданных каталога
    threejs.org/ ↗
  • Реестр пакетов языкаnodejsИз публичных источниковиз манифеста пакета — публикация в реестре не проверена
    npm install three

    Не проверено: перед установкой убедитесь, что пакет в реестре принадлежит этому проекту.

    www.npmjs.com/package/three ↗
  • Сборка из исходниковИз публичных источниковиз метаданных каталога

    Сборка из исходников: проверенного рецепта сборки нет — следуйте инструкциям репозитория.

    github.com/mrdoob/three.js ↗

Совместимость

«Неизвестно» значит, что доказательств не найдено, а не что продукт несовместим.
ПлатформаСтатусАрхитектураДоказательствоУверенность
Node.jsСовместимо—манифест пакета: package.json name0.60
PythonНеизвестно———
JVMНеизвестно———
.NETНеизвестно———
WebAssemblyНеизвестно———
Web browserНеизвестно———

Релизы

проверено 29 окт. 2026 г.
В источнике релизы не найдены.

Профиль качества

алгоритм quality-v1.0 · оценено 15 окт. 2026 г.
Оценка качества91
Оценка риска0
Уверенность 1.00
Оценка качества и оценка риска — разные показатели. Высокое качество не гарантирует безопасность.

Составляющие оценки

Поддержка · 2020
last activity 0 days ago
Документация · 1515
README 2969 chars, description present
Готовность к использованию · 156
install instructions: no; releases: yes
Метаданные · 1010
4/4 of description, homepage, license, topics
Релизы · 1010
10 release(s), latest 21 days ago
Точность категории · 1010
classifier confidence 1
Популярность · 1010
116458 stars (log-dampened, 10k = max)
Ясность лицензии · 55
SPDX MIT
Сообщество · 55
issues enabled, 36646 forks

Лицензия

MIT
Лицензия известнапо данным хостинга репозитория

Это статус политики каталога, а не юридическое заключение.

Источники

github.com/mrdoob/three.jsОсновной★ 116 458 звёздактивность 15 окт. 2026 г.Основной репозиторий · Уверенность 1.00

Отзывы

Войдите, чтобы написать отзыв

Отзывов пока нет.

Альтернативы

Babylon.jsПохожий
Babylon.js — открытый игровой движок и библиотека 3D-рендеринга на JavaScript и TypeScript для интерактивных веб-приложений на WebGL и WebGPU.Apache-2.0 · Библиотеки и SDK
animeПохожий
Anime.js — легковесная JavaScript-библиотека для анимации CSS-свойств, SVG, DOM-атрибутов и JavaScript-объектов, распространяемая по лицензии MIT.MIT · Библиотеки и SDK
pixijsПохожий
PixiJS — открытая библиотека для 2D-рендеринга в HTML5, позволяющая создавать быструю интерактивную графику и игры в браузере на WebGL и WebGPU.MIT · Библиотеки и SDK
dotlottie-webПохожий
dotlottie-web — открытый плеер Lottie и dotLottie для веба на ядре Rust и WASM, библиотека для анимации в интерфейсах и SDK.MIT · Библиотеки и SDK
remotionПохожий
Remotion — библиотека на React для программного создания видео: видеоролики пишутся кодом и рендерятся в файлы без ручного монтажа.Библиотеки и SDK
GSAPПохожий
GSAP — JavaScript-библиотека для анимации, не привязанная к фреймворку, которая плавно анимирует CSS, SVG, canvas и любые свойства JavaScript в браузере.Библиотеки и SDK

README

Из mrdoob/three.js · лицензия MIT · загружено 29 окт. 2026 г.

three.js

[NPM Package] [Build Size] [NPM Downloads] [jsDelivr Downloads] [Discord]

JavaScript 3D library

The aim of the project is to create an easy-to-use, lightweight, cross-browser, general-purpose 3D library. The current builds only include WebGL and WebGPU renderers but SVG and CSS3D renderers are also available as addons.

Examples — Docs — Manual — Wiki — Migrating — Questions — Forum — Discord

Usage

This code creates a scene, a camera, and a geometric cube, and it adds the cube to the scene. It then creates a WebGL renderer for the scene and camera, and it adds that viewport to the document.body element. Finally, it animates the cube within the scene for the camera.

import * as THREE from 'three';

const width = window.innerWidth, height = window.innerHeight;

// init

const camera = new THREE.PerspectiveCamera( 70, width / height, 0.01, 10 );
camera.position.z = 1;

const scene = new THREE.Scene();

const geometry = new THREE.BoxGeometry( 0.2, 0.2, 0.2 );
const material = new THREE.MeshNormalMaterial();

const mesh = new THREE.Mesh( geometry, material );
scene.add( mesh );

const renderer = new THREE.WebGLRenderer( { antialias: true } );
renderer.setSize( width, height );
renderer.setAnimationLoop( animate );
document.body.appendChild( renderer.domElement );

// animation

function animate( time ) {

	mesh.rotation.x = time / 2000;
	mesh.rotation.y = time / 1000;

	renderer.render( scene, camera );

}

If everything goes well, you should see this.

Cloning this repository

Cloning the repo with all its history results in a ~2 GB download. If you don't need the whole history you can use the depth parameter to significantly reduce download size.

git clone --depth=1 https://github.com/mrdoob/three.js.git

Change log

Releases

Открыть репозиторий ↗