Package category
3D, WebGL and game engines
Three.js, Babylon, WebGL, canvas and game development.
658 packages25 comparisons
Packages compared
658 packages
| Package | Weekly downloads | 12-month change | 52 weeks | Gzip | Last release | Module | Types | Categories |
|---|---|---|---|---|---|---|---|---|
| matter-js a 2D rigid body physics engine for the web | 240.3k | +110% | - | - 0.20.0 | CommonJS | None | 3D, WebGL and game engines | |
| sigma A JavaScript library aimed at visualizing graphs of thousands of nodes and edges. | 232.7k | +729% | - | 4 months ago 3.0.3 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, Charts and data visualisation | |
| @cesium/widgets A widgets library for use with CesiumJS. CesiumJS is a JavaScript library for creating 3D globes and 2D maps in a web browser without a plugin. | 230.3k | - | - | - | 23 days ago 16.2.0 | ESM only | Bundled | 3D, WebGL and game engines, Maps and geolocation |
| three-globe Globe data visualization as a ThreeJS reusable 3D object | 228.9k | +256% | - | 5 months ago 2.45.2 | ESM only | Bundled | 3D, WebGL and game engines, Charts and data visualisation | |
| dom-to-image Generates an image from a DOM node using HTML5 canvas and SVG | 227.9k | +17% | - | 8 years ago 2.6.0 | CommonJS | None | Image processing, DOM and browser utilities | |
| three-geojson-geometry ThreeJS geometry for stroking GeoJSON objects on a sphere | 224.5k | +246% | - | 1 year ago 2.1.1 | ESM only | Bundled | 3D, WebGL and game engines, Maps and geolocation | |
| @loaders.gl/geoarrow GeoArrow columnar geometry encoding and decoding | 209k | - | - | - | 5 days ago 4.5.2 | ESM + CommonJS | Bundled | Parsers and serialisers, 3D, WebGL and game engines |
| three-slippy-map-globe Tiled maps on a globe as a ThreeJS reusable 3D object | 205.4k | +382% | - | 5 months ago 1.0.6 | ESM only | Bundled | 3D, WebGL and game engines, Charts and data visualisation | |
| shaders The design platform for web shaders | 192.2k | +28359% | - | 14 days ago 3.2.470 | ESM + CommonJS | Bundled | 3D, WebGL and game engines | |
| @babylonjs/loaders For usage documentation please visit https://doc.babylonjs.com/features/featuresDeepDive/importers/loadingFileTypes/. | 183.1k | - | - | - | 1 day ago 9.28.0 | ESM only | Bundled | 3D, WebGL and game engines |
| babylonjs-gltf2interface A typescript declaration of babylon's gltf2 interface. | 180.5k | +204% | - | 1 day ago 9.28.0 | - | Bundled | 3D, WebGL and game engines, TypeScript tooling | |
| deck.gl A suite of 3D-enabled data visualization overlays, suitable for react-map-gl | 177.1k | +22% | - | 19 days ago 9.4.0 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, Charts and data visualisation | |
| @deck.gl/json JSON format rendering components for deck.gl | 172.7k | - | - | - | 19 days ago 9.4.0 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, Charts and data visualisation |
| @sparkjsdev/spark An advanced 3D Gaussian Splatting renderer for THREE.js | 171.8k | - | - | - | 13 days ago 2.2.0 | ESM + CommonJS | Bundled | 3D, WebGL and game engines |
| skia-canvas A multi-threaded, GPU-accelerated, Canvas API for Node | 170.3k | +70% | - | 11 months ago 3.0.8 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, PDF and documents | |
| viewport-mercator-project Utilities for perspective-enabled Web Mercator projections | 168.5k | -24% | - | - 7.0.4 | ESM + CommonJS | Bundled | 3D, WebGL and game engines | |
| expo-gl Provides GLView that acts as OpenGL ES render target and gives GL context object implementing WebGL 2.0 specification. | 166.9k | +643% | - | 2 months ago 57.0.2 | CommonJS | Bundled | 3D, WebGL and game engines, React | |
| globe.gl UI component for Globe Data Visualization using ThreeJS/WebGL | 165.2k | +335% | - | 1 month ago 2.46.2 | ESM only | Bundled | 3D, WebGL and game engines, Charts and data visualisation | |
| quadbin Utility functions for working with Quadbins | 162.6k | +37% | - | 1 year ago 0.4.2 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, Charts and data visualisation | |
| react-force-graph-3d React component for 3D force directed graphs | 162.5k | +1095% | - | 7 months ago 1.29.1 | ESM only | Bundled | 3D, WebGL and game engines, React | |
| @kitware/vtk.js Visualization Toolkit for the Web | 160k | - | - | - | 1 day ago 37.3.0 | ESM only | Bundled | 3D, WebGL and game engines |
| react-canvas-confetti React component for canvas-confetti library | 146.9k | +75% | - | 2 years ago 2.0.7 | CommonJS | Bundled | React, 3D, WebGL and game engines | |
| fast-average-color A simple library that calculates the average color of images, videos and canvas in browser environment. | 144.2k | +95% | - | - 9.6.0 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, Video and audio | |
| occt-import-js Javascript interface for the occt library. | 143.2k | +3140% | - | 1 year ago 0.0.23 | CommonJS | None | 3D, WebGL and game engines | |
| phenomenon A fast 2kB low-level WebGL API. | 130.7k | +173% | - | 7 years ago 1.6.0 | CommonJS | Bundled | 3D, WebGL and game engines | |
| shader-loader glsl loader for webpack working with chunks (inspired by ShaderLoader from cabbibo) | 121.9k | +203% | - | 9 years ago 1.3.1 | CommonJS | None | 3D, WebGL and game engines | |
| wgpu-matrix fast matrix math library for WebGPU | 120.2k | +2848% | - | 7 months ago 3.4.2 | ESM only | Bundled | 3D, WebGL and game engines | |
| @pixi/assets Asset manager for PixiJS, loading resolving and Cacheing | 120k | - | - | - | 1 year ago 7.4.3 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, Caching |
| @vgpu/adapter-node Node.js GPU adapter for vgpu, using Dawn-based WebGPU bindings. | 116.8k | - | - | - | 10 days ago 0.5.0 | ESM only | Bundled | 3D, WebGL and game engines |
| manifold-3d Geometry library for topological robustness | 112.2k | +3173% | - | - 3.5.3 | ESM only | Bundled | 3D, WebGL and game engines | |
| three-spritetext A sprite based text component for ThreeJS | 111.7k | +487% | - | 1 year ago 1.10.0 | ESM only | Bundled | 3D, WebGL and game engines | |
| @deck.gl/arcgis Use deck.gl as a custom ArcGIS API for JavaScript layer | 111.6k | - | - | - | 19 days ago 9.4.0 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, Charts and data visualisation |
| ngx-lottie <h1 align="center"> <img src="https://raw.githubusercontent.com/ngx-lottie/ngx-lottie/refs/heads/master/docs/assets/logo.png"> </h1> | 110.3k | +23% | - | 2 months ago 22.0.0 | ESM only | Bundled | Animation, Angular | |
| gltf-validator Library for validating glTF 2.0 assets, compiled from Dart to JS. | 108.5k | +525% | - | 1 year ago 2.0.0-dev.3.10 | ESM + CommonJS | None | 3D, WebGL and game engines | |
| @vgpu/wgsl WGSL shader compilation, runtime resolution, and webpack/vite loaders for vgpu. | 106.5k | - | - | - | 10 days ago 0.5.0 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, Bundler plugins and loaders |
| react-globe.gl React component for Globe Data Visualization using ThreeJS/WebGL | 106k | +256% | - | 4 months ago 2.38.0 | ESM only | Bundled | 3D, WebGL and game engines, React | |
| @vgpu/adapter-mock Mock GPU adapter for testing vgpu code without real WebGPU hardware. | 105.7k | - | - | - | 10 days ago 0.5.0 | ESM only | Bundled | Testing, 3D, WebGL and game engines |
| @vgpu/wgsl-std Pure WGSL utility snippets for vgpu shaders. | 104.3k | - | - | - | 10 days ago 0.5.0 | ESM only | None | 3D, WebGL and game engines |
| @luma.gl/gltools WebGL2 API Polyfills for WebGL1 WebGLRenderingContext | 102.8k | - | - | - | 3 years ago 8.5.21 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, Polyfills and shims |
| @pixi/text-html Multi-Style Text Rendering Plugin for PixiJS | 100.8k | - | - | - | 1 year ago 7.4.3 | ESM + CommonJS | Bundled | 3D, WebGL and game engines |
| @comfyorg/fbx-exporter-three FBX exporter for three.js scenes — binary FBX writer with full skinning, animation, morph targets, lights, cameras and texture embedding. | 95.6k | - | - | - | 2 days ago 1.0.2 | ESM only | Bundled | 3D, WebGL and game engines, Animation |
| canvas-size Determine the maximum area, height, width, and custom dimensions of an HTML canvas element. | 93.7k | +139% | - | 2 years ago 2.0.0 | ESM only | None | 3D, WebGL and game engines, Testing | |
| fireworks-js A simple fireworks library! | 91.9k | +192% | - | 2 years ago 2.10.8 | ESM + CommonJS | Bundled | Animation, 3D, WebGL and game engines | |
| js-confetti JS Confetti library with zero dependencies, works without any config, TS typings included, adapts to user screen | 91.4k | +44% | - | - 0.13.1 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, Animation | |
| vite-plugin-glsl Import, inline (and minify) GLSL/WGSL/Slang shader files | 91.1k | +51% | - | 2 months ago 1.6.1 | ESM only | Bundled | 3D, WebGL and game engines, Bundler plugins and loaders | |
| @xterm/addon-canvas An addon for [xterm.js](https://github.com/xtermjs/xterm.js) that enables a canvas-based renderer using a 2d context to draw. This addon requires xterm.js v5+. | 88.4k | - | - | - | 2 years ago 0.7.0 | CommonJS | Bundled | CLI tools and terminal utilities, 3D, WebGL and game engines |
| 3d-tiles-renderer https://github.com/AnalyticalGraphicsInc/3d-tiles/tree/master/specification | 88.1k | +1291% | - | 7 days ago 0.5.3 | ESM only | Bundled | 3D, WebGL and game engines | |
| cannon-es A lightweight 3D physics engine written in JavaScript. | 85.5k | +61% | - | 4 years ago 0.20.0 | ESM + CommonJS | Bundled | 3D, WebGL and game engines | |
| three-bvh-csg A fast, flexible, dynamic CSG implementation on top of three-mesh-bvh | 85k | +558% | - | 7 months ago 0.0.18 | ESM + CommonJS | Bundled | 3D, WebGL and game engines | |
| pixi-viewport A highly configurable viewport/2D camera designed to work with pixi.js. Features include dragging, pinch-to-zoom, mouse wheel zooming, decelerated dragging, follow target, snap to point, snap to zoom, clamping, bouncing on edges, and move on mouse edges. | 84.4k | +150% | - | 1 year ago 6.0.3 | ESM + CommonJS | Bundled | 3D, WebGL and game engines |
12-month change compares the average of the last 4 weeks of downloads with the first 4 weeks of the 52-week series. Gzip size is for the whole package, as measured by Bundlephobia. "-" means the value has not been fetched.
- matter-jsa 2D rigid body physics engine for the web
- sigmaA JavaScript library aimed at visualizing graphs of thousands of nodes and edges.
- @cesium/widgetsA widgets library for use with CesiumJS. CesiumJS is a JavaScript library for creating 3D globes and 2D maps in a web browser without a plugin.
- three-globeGlobe data visualization as a ThreeJS reusable 3D object
- dom-to-imageGenerates an image from a DOM node using HTML5 canvas and SVG
- three-geojson-geometryThreeJS geometry for stroking GeoJSON objects on a sphere
- @loaders.gl/geoarrowGeoArrow columnar geometry encoding and decoding
- three-slippy-map-globeTiled maps on a globe as a ThreeJS reusable 3D object
- shadersThe design platform for web shaders
- @babylonjs/loadersFor usage documentation please visit https://doc.babylonjs.com/features/featuresDeepDive/importers/loadingFileTypes/.
- babylonjs-gltf2interfaceA typescript declaration of babylon's gltf2 interface.
- deck.glA suite of 3D-enabled data visualization overlays, suitable for react-map-gl
- @deck.gl/jsonJSON format rendering components for deck.gl
- @sparkjsdev/sparkAn advanced 3D Gaussian Splatting renderer for THREE.js
- skia-canvasA multi-threaded, GPU-accelerated, Canvas API for Node
- viewport-mercator-projectUtilities for perspective-enabled Web Mercator projections
- expo-glProvides GLView that acts as OpenGL ES render target and gives GL context object implementing WebGL 2.0 specification.
- globe.glUI component for Globe Data Visualization using ThreeJS/WebGL
- quadbinUtility functions for working with Quadbins
- react-force-graph-3dReact component for 3D force directed graphs
- @kitware/vtk.jsVisualization Toolkit for the Web
- react-canvas-confettiReact component for canvas-confetti library
- fast-average-colorA simple library that calculates the average color of images, videos and canvas in browser environment.
- occt-import-jsJavascript interface for the occt library.
- phenomenonA fast 2kB low-level WebGL API.
- shader-loaderglsl loader for webpack working with chunks (inspired by ShaderLoader from cabbibo)
- wgpu-matrixfast matrix math library for WebGPU
- @pixi/assetsAsset manager for PixiJS, loading resolving and Cacheing
- @vgpu/adapter-nodeNode.js GPU adapter for vgpu, using Dawn-based WebGPU bindings.
- manifold-3dGeometry library for topological robustness
- three-spritetextA sprite based text component for ThreeJS
- @deck.gl/arcgisUse deck.gl as a custom ArcGIS API for JavaScript layer
- ngx-lottie<h1 align="center"> <img src="https://raw.githubusercontent.com/ngx-lottie/ngx-lottie/refs/heads/master/docs/assets/logo.png"> </h1>
- gltf-validatorLibrary for validating glTF 2.0 assets, compiled from Dart to JS.
- @vgpu/wgslWGSL shader compilation, runtime resolution, and webpack/vite loaders for vgpu.
- react-globe.glReact component for Globe Data Visualization using ThreeJS/WebGL
- @vgpu/adapter-mockMock GPU adapter for testing vgpu code without real WebGPU hardware.
- @vgpu/wgsl-stdPure WGSL utility snippets for vgpu shaders.
- @luma.gl/gltoolsWebGL2 API Polyfills for WebGL1 WebGLRenderingContext
- @pixi/text-htmlMulti-Style Text Rendering Plugin for PixiJS
- @comfyorg/fbx-exporter-threeFBX exporter for three.js scenes — binary FBX writer with full skinning, animation, morph targets, lights, cameras and texture embedding.
- canvas-sizeDetermine the maximum area, height, width, and custom dimensions of an HTML canvas element.
- fireworks-jsA simple fireworks library!
- js-confettiJS Confetti library with zero dependencies, works without any config, TS typings included, adapts to user screen
- vite-plugin-glslImport, inline (and minify) GLSL/WGSL/Slang shader files
- @xterm/addon-canvasAn addon for [xterm.js](https://github.com/xtermjs/xterm.js) that enables a canvas-based renderer using a 2d context to draw. This addon requires xterm.js v5+.
- 3d-tiles-rendererhttps://github.com/AnalyticalGraphicsInc/3d-tiles/tree/master/specification
- cannon-esA lightweight 3D physics engine written in JavaScript.
- three-bvh-csgA fast, flexible, dynamic CSG implementation on top of three-mesh-bvh
- pixi-viewportA highly configurable viewport/2D camera designed to work with pixi.js. Features include dragging, pinch-to-zoom, mouse wheel zooming, decelerated dragging, follow target, snap to point, snap to zoom, clamping, bouncing on edges, and move on mouse edges.
- html-to-image vs dom-to-image
- canvg vs dom-to-image
- canvg vs html-to-image
- echarts vs lightweight-charts
- canvg vs zrender
- chart.js vs lightweight-charts
- html-to-image vs node-vibrant
- konva vs @lottiefiles/dotlottie-web
- @deck.gl/core vs three-globe
- @deck.gl/core vs sigma
- @lottiefiles/dotlottie-web vs animejs
- konva vs animejs
- 3d-force-graph vs sigma
- zrender vs dom-to-image
- canvas-confetti vs @lottiefiles/dotlottie-web
- html-to-image vs zrender
- node-vibrant vs dom-to-image
- canvas-confetti vs konva
- @napi-rs/canvas vs skia-canvas
- @deck.gl/core vs 3d-force-graph
- @react-three/postprocessing vs react-globe.gl
- @deck.gl/core vs globe.gl
- canvas-confetti vs animejs
- mapbox-gl vs @cesium/engine
- @react-three/postprocessing vs 3d-force-graph