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 |
|---|---|---|---|---|---|---|---|---|
| webpack-glsl-loader A webpack loader for glsl shaders - includes support for nested imports. | 6.1k | +39% | - | 11 years ago 1.0.1 | CommonJS | None | 3D, WebGL and game engines, Bundler plugins and loaders | |
| @pmndrs/vanilla drei-inspired helpers for threejs | 5.9k | - | - | - | 1 year ago 1.25.0 | ESM + CommonJS | Bundled | 3D, WebGL and game engines |
| @loaders.gl/ply Framework-independent loader for the PLY format | 5.9k | - | - | - | 5 days ago 4.5.2 | ESM + CommonJS | Bundled | 3D, WebGL and game engines |
| react-ogl A barebones react renderer for OGL. | 5.9k | +1674% | - | - 0.15.1 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, React | |
| @adea-ai/spatial-protocol Shell↔engine contract for the Adea spatial view: scene mount manifests, spawn URL helpers, and scene telemetry schemas. Pure types — no rendering, no binaries. | 5.8k | - | - | - | today 0.56.2 | ESM only | Bundled | Monitoring and error tracking, 3D, WebGL and game engines |
| @three.ez/instanced-mesh Enhanced InstancedMesh with frustum culling, fast raycasting (using BVH), sorting, visibility management and more. | 5.6k | - | - | - | 2 months ago 0.3.16 | ESM + CommonJS | Bundled | 3D, WebGL and game engines |
| @lightningchart/lcjs A high-performance charting library. | 5.6k | - | - | - | 1 month ago 9.0.0 | ESM + CommonJS | Bundled | Charts and data visualisation, 3D, WebGL and game engines |
| @react-three/offscreen Worker offscreen canvas for react three fiber | 5.6k | - | - | - | 3 years ago 0.0.8 | ESM + CommonJS | Bundled | 3D, WebGL and game engines |
| tailwind-resolver Resolve Tailwind theme variables into JavaScript objects. Supports Tailwind v4 with future-proof versioning. | 5.5k | +2173% | - | 6 months ago 0.3.8 | ESM + CommonJS | Bundled | CSS-in-JS and styling, Parsers and serialisers | |
| @takram/three-geospatial-effects A collection of post-processing effects | 5.5k | - | - | - | 4 months ago 0.6.4 | ESM + CommonJS | Bundled | 3D, WebGL and game engines |
| photoeditorsdk The most comprehensive photo editor SDK for HTML5 | 5.5k | -14% | - | 1 year ago 5.20.0 | ESM + CommonJS | Bundled | 3D, WebGL and game engines | |
| @pascal-app/viewer 3D viewer component for Pascal building editor | 5.5k | - | - | - | 1 day ago 1.0.3 | ESM only | Bundled | 3D, WebGL and game engines, Rich text and code editors |
| kaplay KAPLAY is a JavaScript & TypeScript game library that helps you make games fast and fun! (formerly known as Kaboom.js) | 5.3k | +160% | - | 1 year ago 3001.0.19 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, TypeScript tooling | |
| photo-sphere-viewer A JavaScript library to display Photo Sphere panoramas | 5.2k | -25% | - | - 4.8.1 | CommonJS | Bundled | 3D, WebGL and game engines | |
| phaser-ce Phaser CE (Community Edition) is a fast, free and fun HTML5 Game Framework for Desktop and Mobile web browsers. | 5.2k | +127% | - | - 2.20.2 | CommonJS | Bundled | 3D, WebGL and game engines | |
| @foobar404/wave Audio visualizer library for javascript. | 5.2k | - | - | - | 2 years ago 2.0.5 | CommonJS | Bundled | Video and audio, 3D, WebGL and game engines |
| lamina 🍰 An extensable, layer based shader material for ThreeJS. | 5.2k | +84% | - | 1 year ago 1.2.2 | ESM + CommonJS | Bundled | 3D, WebGL and game engines | |
| babylonjs-serializers > We recommend using the [ES6 package `@babylonjs/serializers`](https://www.npmjs.com/package/@babylonjs/serializers) for new projects. | 5.2k | +33% | - | - 9.28.0 | CommonJS | Bundled | 3D, WebGL and game engines | |
| @three-ts/orbit-controls Three.js OrbitControls typescript compatible package | 5.2k | - | - | - | 5 years ago 1.4.7 | CommonJS | Bundled | 3D, WebGL and game engines, TypeScript tooling |
| regl-line 2D line generator for Regl | 5.1k | +189% | - | - 1.1.1 | ESM only | Bundled | 3D, WebGL and game engines | |
| geo-three geo-three is library for tile based geographic map layers in with three.js supporting selective loading/unloading of real-time generated 3D tiles | 5k | +24% | - | 1 year ago 0.1.15 | ESM + CommonJS | Bundled | 3D, WebGL and game engines | |
| @playcanvas/react A React renderer for PlayCanvas – build interactive 3D applications using React's declarative paradigm. | 5k | - | - | - | 3 months ago 0.11.5 | ESM only | Bundled | 3D, WebGL and game engines, React |
| expo-gl-cpp C++ bindings for WebGL 2.0 used in Expo GL module | 5k | -44% | - | - 11.4.0 | CommonJS | None | 3D, WebGL and game engines, React | |
| pixi-reels A batteries-included slot machine reel engine for PixiJS v8 — fluent builder, typed events, spin phases, speed modes, win spotlight, and a headless testing harness. | 4.9k | - | - | 4 days ago 3.1.0 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, Animation | |
| nebula.gl A suite of 3D-enabled data editing overlays, suitable for deck.gl | 4.9k | -40% | - | 3 years ago 1.0.4 | ESM + CommonJS | Bundled | 3D, WebGL and game engines | |
| @miris-inc/three Three.js rendering layer for the Miris 3D streaming SDK. Subclasses @miris-inc/core's Scene, Stream, and LOD primitives and wires them into Three.js objects. | 4.8k | - | - | - | 1 day ago 0.0.8-07e9c0a | ESM only | Bundled | 3D, WebGL and game engines |
| @webav/av-cliper WebCodecs-based, combine video, audio, images, text, with animation support 基于 WebCodecs 合成 视频、音频、图片、文字,支持动画 | 4.8k | - | - | - | 8 months ago 1.2.8 | ESM + CommonJS | Bundled | Video and audio, 3D, WebGL and game engines |
| @react-three/flex `<Flex />` component for the 3D World. | 4.8k | - | - | - | 3 years ago 1.0.1 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, React |
| @photo-sphere-viewer/equirectangular-tiles-adapter Photo Sphere Viewer adapter to display tiled panoramas. | 4.7k | - | - | - | 1 month ago 5.15.1 | ESM + CommonJS | Bundled | 3D, WebGL and game engines |
| gpu-time A compact neural parser for English schedules | 4.7k | - | - | 4 days ago 0.5.0 | ESM only | Bundled | 3D, WebGL and game engines, AI and machine learning | |
| @deck.gl-community/leaflet deck.gl integration with Leaflet | 4.7k | - | - | - | 17 days ago 9.4.1 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, Charts and data visualisation |
| maplibre-gl-draw A drawing component for Mapbox GL JS | 4.6k | -77% | - | 3 years ago 1.6.9 | CommonJS | Bundled | 3D, WebGL and game engines, Maps and geolocation | |
| @react-three/uikit-lucide lucide icons for r3/uikit | 4.6k | - | - | - | 23 days ago 1.0.76 | ESM only | Bundled | Icons, 3D, WebGL and game engines |
| dom-2d-camera A wrapper for attaching a 2D camera to a DOM element | 4.6k | +180% | - | 1 year ago 2.2.6 | ESM + CommonJS | None | 3D, WebGL and game engines, DOM and browser utilities | |
| @spatius/avatarkit AvatarKit — real-time, audio-driven avatar rendering SDK for Web. | 4.6k | - | - | - | 9 days ago 1.3.9 | ESM only | Bundled | 3D, WebGL and game engines |
| mind-ar web augmented reality framework | 4.6k | +544% | - | - 1.2.5 | ESM only | None | 3D, WebGL and game engines | |
| three-trackballcontrols A module for using THREE.TrackballControls with nodejs | 4.5k | +226% | - | 5 years ago 0.9.0 | CommonJS | None | 3D, WebGL and game engines | |
| @itwin/map-layers-formats Enables additional map-layers formats in iTwin.js | 4.4k | - | - | - | 2 days ago 5.13.5 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, Build tools |
| @luma.gl/webgl2-polyfill WebGL2 API Polyfills for WebGL1 WebGLRenderingContext | 4.2k | - | - | - | 6 years ago 7.3.2 | ESM + CommonJS | None | 3D, WebGL and game engines, Polyfills and shims |
| cannon A lightweight 3D physics engine written in JavaScript. | 4.2k | -32% | - | 11 years ago 0.6.2 | CommonJS | None | 3D, WebGL and game engines | |
| scrawl-canvas Responsive, interactive and more accessible HTML5 canvas elements. Scrawl-canvas is a JavaScript library designed to make using the HTML5 canvas element easier, and more fun | 4.2k | +19% | - | 4 months ago 8.19.0 | ESM only | Bundled | Accessibility, Animation | |
| @luma.gl/webgl-state-tracker WebGL state manager that saves and restores WebGLRenderingContext state | 4.2k | - | - | - | 6 years ago 7.3.2 | ESM + CommonJS | None | 3D, WebGL and game engines |
| @specy/liquid-glass-react React component for @specy/liquid-glass - A Three.js powered library to make apple's liquid with glass effect | 4.2k | - | - | - | 1 year ago 1.0.2 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, React |
| @antv/larkmap A React toolkit for geospatial visualization based on L7 | 4.1k | - | - | - | 2 years ago 1.5.1 | ESM + CommonJS | Bundled | React, Maps and geolocation |
| yuv-canvas Utility for drawing YUV image data to HTML5 canvas | 4.1k | +57% | - | - 1.3.0 | CommonJS | None | 3D, WebGL and game engines | |
| @pixi/gif Animated GIF Runtime for PixiJS | 4k | - | - | - | 2 years ago 3.0.1 | ESM + CommonJS | Bundled | 3D, WebGL and game engines, Animation |
| three-dat.gui A package which create THREE.js controls on Dat.GUI | 4k | +697% | - | 6 years ago 2.0.7 | ESM + CommonJS | None | 3D, WebGL and game engines | |
| gsplat JavaScript Gaussian Splatting library | 4k | +275% | - | 1 year ago 1.2.9 | ESM only | Bundled | 3D, WebGL and game engines | |
| spin-wheel An easy to use, themeable component for randomising choices and prizes. | 3.9k | +90% | - | - 5.0.2 | ESM only | None | 3D, WebGL and game engines, UI component libraries | |
| camera-unproject unproject 2D point to 3D coordinate | 3.9k | +85% | - | 11 years ago 1.0.1 | CommonJS | None | 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.
- webpack-glsl-loaderA webpack loader for glsl shaders - includes support for nested imports.
- @pmndrs/vanilladrei-inspired helpers for threejs
- @loaders.gl/plyFramework-independent loader for the PLY format
- react-oglA barebones react renderer for OGL.
- @adea-ai/spatial-protocolShell↔engine contract for the Adea spatial view: scene mount manifests, spawn URL helpers, and scene telemetry schemas. Pure types — no rendering, no binaries.
- @three.ez/instanced-meshEnhanced InstancedMesh with frustum culling, fast raycasting (using BVH), sorting, visibility management and more.
- @lightningchart/lcjsA high-performance charting library.
- @react-three/offscreenWorker offscreen canvas for react three fiber
- tailwind-resolverResolve Tailwind theme variables into JavaScript objects. Supports Tailwind v4 with future-proof versioning.
- @takram/three-geospatial-effectsA collection of post-processing effects
- photoeditorsdkThe most comprehensive photo editor SDK for HTML5
- @pascal-app/viewer3D viewer component for Pascal building editor
- kaplayKAPLAY is a JavaScript & TypeScript game library that helps you make games fast and fun! (formerly known as Kaboom.js)
- photo-sphere-viewerA JavaScript library to display Photo Sphere panoramas
- phaser-cePhaser CE (Community Edition) is a fast, free and fun HTML5 Game Framework for Desktop and Mobile web browsers.
- @foobar404/waveAudio visualizer library for javascript.
- lamina🍰 An extensable, layer based shader material for ThreeJS.
- babylonjs-serializers> We recommend using the [ES6 package `@babylonjs/serializers`](https://www.npmjs.com/package/@babylonjs/serializers) for new projects.
- @three-ts/orbit-controlsThree.js OrbitControls typescript compatible package
- regl-line2D line generator for Regl
- geo-threegeo-three is library for tile based geographic map layers in with three.js supporting selective loading/unloading of real-time generated 3D tiles
- @playcanvas/reactA React renderer for PlayCanvas – build interactive 3D applications using React's declarative paradigm.
- expo-gl-cppC++ bindings for WebGL 2.0 used in Expo GL module
- pixi-reelsA batteries-included slot machine reel engine for PixiJS v8 — fluent builder, typed events, spin phases, speed modes, win spotlight, and a headless testing harness.
- nebula.glA suite of 3D-enabled data editing overlays, suitable for deck.gl
- @miris-inc/threeThree.js rendering layer for the Miris 3D streaming SDK. Subclasses @miris-inc/core's Scene, Stream, and LOD primitives and wires them into Three.js objects.
- @webav/av-cliperWebCodecs-based, combine video, audio, images, text, with animation support 基于 WebCodecs 合成 视频、音频、图片、文字,支持动画
- @react-three/flex`<Flex />` component for the 3D World.
- @photo-sphere-viewer/equirectangular-tiles-adapterPhoto Sphere Viewer adapter to display tiled panoramas.
- gpu-timeA compact neural parser for English schedules
- @deck.gl-community/leafletdeck.gl integration with Leaflet
- maplibre-gl-drawA drawing component for Mapbox GL JS
- @react-three/uikit-lucidelucide icons for r3/uikit
- dom-2d-cameraA wrapper for attaching a 2D camera to a DOM element
- @spatius/avatarkitAvatarKit — real-time, audio-driven avatar rendering SDK for Web.
- mind-arweb augmented reality framework
- three-trackballcontrolsA module for using THREE.TrackballControls with nodejs
- @itwin/map-layers-formatsEnables additional map-layers formats in iTwin.js
- @luma.gl/webgl2-polyfillWebGL2 API Polyfills for WebGL1 WebGLRenderingContext
- cannonA lightweight 3D physics engine written in JavaScript.
- scrawl-canvasResponsive, interactive and more accessible HTML5 canvas elements. Scrawl-canvas is a JavaScript library designed to make using the HTML5 canvas element easier, and more fun
- @luma.gl/webgl-state-trackerWebGL state manager that saves and restores WebGLRenderingContext state
- @specy/liquid-glass-reactReact component for @specy/liquid-glass - A Three.js powered library to make apple's liquid with glass effect
- @antv/larkmapA React toolkit for geospatial visualization based on L7
- yuv-canvasUtility for drawing YUV image data to HTML5 canvas
- @pixi/gifAnimated GIF Runtime for PixiJS
- three-dat.guiA package which create THREE.js controls on Dat.GUI
- gsplatJavaScript Gaussian Splatting library
- spin-wheelAn easy to use, themeable component for randomising choices and prizes.
- camera-unprojectunproject 2D point to 3D coordinate
- 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