About
Three.js is an open-source JavaScript library that makes 3D graphics accessible on the web. It abstracts the complexity of WebGL, allowing developers to create and display animated 3D scenes directly in a browser. Since its first release in April 2010, it has become the de facto standard for web-based 3D visualization, powering everything from product configurators and architectural walkthroughs to interactive data visualizations and browser games. The project is decentralized, maintained by a global community of contributors on GitHub, with its founder Ricardo Cabello (known online as Mr.doob) historically serving as lead maintainer.
Unlike a traditional organization, Three.js has no corporate structure, CEO, or formal headquarters. Its home is its GitHub repository, and its operations are driven by volunteer maintainers and contributors. The library is modular, with core components for animation, cameras, geometries, lights, loaders, materials, and renderers, plus a vast ecosystem of addons for controls, physics, post-processing, and WebXR. This modularity, combined with extensive documentation and examples on its official site, has made it a go-to tool for both hobbyists and professionals. While the United States leads in usage at 24%, Europe collectively accounts for over 32% of adoption, with strong presence in France, Germany, Spain, and Italy, reflecting its appeal in creative agencies and architecture firms.
Mission
Three.js aims to simplify the creation of 3D graphics on the web by providing a high-level, intuitive API that hides the complexities of WebGL. The project's goal is to empower developers to build rich, interactive 3D experiences without requiring deep graphics programming knowledge. It is committed to being free, open-source, and accessible, with a strong emphasis on community collaboration and continuous improvement.
History
Three.js traces its roots to 2002, when Ricardo Cabello, active in the demoscene community, grew frustrated with the inefficiency of collaborating with 3D programmers. He decided to learn graphics programming himself and began building a 3D engine. The initial code was written in ActionScript for Adobe Flash, but in 2009 Cabello ported it to JavaScript, drawn by the language's platform independence and lack of pre-compilation. The first public release on GitHub followed in April 2010, marking the start of its rise as the leading WebGL library.
Since then, the project has grown through community contributions. Cabello personally handled the API design, the CanvasRenderer, and the SVGRenderer, while integrating commits from a growing pool of contributors. The library's adoption has expanded across industries, from micro-businesses (66.5% of usage) to enterprise and government users, including FLINT Corp. in Canada and the Instituto Nacional de Antropologia e Historia in Mexico. Its documentation has evolved to cover modern features like WebGPU and TSL (Three Shading Language), ensuring its relevance in the rapidly advancing field of web graphics.
Subdivisions
Core Modules
Essential components including Animation, Audio, Cameras, Geometries, Lights, Loaders, Materials, Math, Objects, Renderers, Scenes, and Textures.
Addons
Extended functionality such as Controls, Effects, Exporters, Physics, Postprocessing, and WebXR support.
Notable People
Ricardo Cabello
Creator and Lead Maintainer · 2002-present
Founded the project, designed the API, and merged contributions from the community.
Bruno Simon
Educator · 2019-present
Created 'Three.js Journey', a widely used paid course for learning the library.
Milestones
2002
Conceptual origin in the demoscene; initial development in ActionScript.
2009
Port to JavaScript, motivated by platform independence.
2010
First public release on GitHub in April.
2019
Launch of 'Three.js Journey' course by Bruno Simon, boosting the learning ecosystem.
Sources
Organization Info
- Founded
- April 2010
- Headquarters
- GitHub repository (decentralized)
- Country
- Global
- Creator and Lead Maintainer
- Ricardo Cabello (lead maintainer)
- Type
- Other
- License
- MIT License
- Repository
- GitHub
Official Website
threejs.org/
Join the community
fans discussing
