Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
A collection of WebGL and WebGPU frameworks and libraries

A non-exhaustive list of WebGL and WebGPU frameworks and libraries. It is mostly for learning purposes as some of the libraries listed are wip/outdated/not maintained anymore.

Engines and libraries

Name Stars Last Commit Description
three.js GitHub Repo stars GitHub last commit JavaScript 3D library
stack.gl GitHub Repo stars GitHub last commit an open software ecosystem for WebGL, built on top of browserify and npm.
PixiJS GitHub Repo stars GitHub last commit Super fast HTML 5 2D rendering engine that uses webGL with canvas fallback
Pex GitHub Repo stars GitHub last commit Pex is a javascript 3d library / engine allowing for seamless development between Plask and WebGL in the browser.
Babylon.js GitHub Repo stars GitHub last commit a complete JavaScript framework for building 3D games with HTML 5 and WebGL
Filament GitHub Repo stars GitHub last commit Filament is a real-time physically based rendering engine for Android, iOS, Windows, Linux, macOS and WASM/WebGL
ClayGL GitHub Repo stars GitHub last commit A WebGL graphic library helping you to build scalable Web3D applications
AwayJS GitHub Repo stars GitHub last commit AwayJS is a graphics library for javascript written in typescript
SceneJS GitHub Repo stars GitHub last commit An extensible WebGL-based engine for high-detail 3D visualisation
Blend4Web GitHub Repo stars GitHub last commit a tool for interactive 3D visualization on the Internet
PlayCanvas GitHub Repo stars GitHub last commit JavaScript game engine built on WebGL and WebVR
Turbulenz GitHub Repo stars GitHub last commit Turbulenz is a modular 3D and 2D game framework for making HTML5 powered games for browsers, desktops and mobile devices.
Hilo3d GitHub Repo stars GitHub last commit a WebGL Rendering Engine.
litescene GitHub Repo stars GitHub last commit A WebGL 3D Engine library with component-based node hierarchy. Used by WebGLStudio.
Two.js GitHub Repo stars GitHub last commit A renderer agnostic two-dimensional drawing api for the web.
webgl-operate GitHub Repo stars GitHub last commit A TypeScript based WebGL rendering framework.
Rhodonite GitHub Repo stars GitHub last commit Rhodonite Web3D Library in TypeScript
Zogra GitHub Repo stars GitHub last commit A simple WebGL2 renderer.
Zea GitHub Repo stars GitHub last commit high-performance, modular, and open-source 3D graphics engine SDK for supporting CAD and BIM models in web applications.
LayaAir GitHub Repo stars GitHub last commit LayaAir is an open-source 2D/3D engine. LayaAir Engine is designed for high performance games.

Toolkits and micro frameworks

Name Stars Last Commit Description
regl GitHub Repo stars GitHub last commit Fast functional WebGL
lightgl.js GitHub Repo stars GitHub last commit A lightweight WebGL library
TWGL GitHub Repo stars GitHub last commit A Tiny WebGL helper Library
p5.js GitHub Repo stars GitHub last commit a new interpretation of Processing, not an emulation or port.
Four GitHub Repo stars GitHub last commit a slightly higher level graphics API based on WebGL 1.0
TDL GitHub Repo stars GitHub last commit TDL is a low-level library for WebGL apps (see TWGL)
KickJS GitHub Repo stars GitHub last commit A WebGL game engine for modern web-browsers
nanogl GitHub Repo stars GitHub last commit webgl micro framework
Alfrid GitHub Repo stars GitHub last commit A WebGL tool set
Medium GitHub Repo stars GitHub last commit Progressive WebGL toolkit for art
PicoGL.js GitHub Repo stars GitHub last commit A minimal WebGL 2-only rendering library
O-GL GitHub Repo stars GitHub last commit Minimal WebGL framework
mini-webgl GitHub Repo stars GitHub last commit Mini toy WebGL library
phenomenon-px GitHub Repo stars GitHub last commit The fastest way to create pixel shaders.
zen-3d GitHub Repo stars GitHub last commit JavaScript 3D library.
GLOW GitHub Repo stars GitHub last commit GLOW is a WebGL wrapper, which focuses on easy creation and use of shaders.
Helix GitHub Repo stars GitHub last commit A Javascript 3D engine.
GrimoireJS GitHub Repo stars GitHub last commit A WebGL framework for Web development.
litegl.js GitHub Repo stars GitHub last commit Lightweight Javascript WebGL library for handling Context, Meshes, Textures and Shaders.
CraZyPG GitHub Repo stars GitHub last commit lowlevel webgl2.0 library
GLBoost GitHub Repo stars GitHub last commit A Useful WebGL Library for Small Turning
RedCube.js GitHub Repo stars GitHub last commit WebGL2 rendering library.
RedGL2 GitHub Repo stars GitHub last commit RedGL - JavaScript 3D library
gi-voxels GitHub Repo stars GitHub last commit WebGL Voxel Cone Tracing
artgl GitHub Repo stars GitHub last commit TypeScript 3D framework. Building blocks & infrastructure for Web 3D application.
Squareroot.js GitHub Repo stars GitHub last commit A 2d/3d engine for WebGL and Canvas rendering and animation
gl3 GitHub Repo stars GitHub last commit webgl helper library
wwg GitHub Repo stars GitHub last commit Simple WebGL wrapper
glTips GitHub Repo stars GitHub last commit Useful, cherry-pickable, and CC0 (public domain like) licensed WebGL routine code snippets.
dan-shari-gl GitHub Repo stars GitHub last commit minimum webgl framework developed with TypeScript
hwoa-rang-gl GitHub Repo stars GitHub last commit Lightweight WebGL Library written in Typescript
desenha GitHub Repo stars GitHub last commit A barebones WebGL framework.
Tmp3D GitHub Repo stars GitHub last commit A 3-D software renderer written from scratch in nothing but JavaScript

Path Tracing

Name Stars Last Commit Description
Snelly GitHub Repo stars GitHub last commit A system for physically-based SDF (signed distance field) pathtracing in WebGL
Ashes GitHub Repo stars GitHub last commit WebGL2.0 3D Engine & ECS & RayTracing

Tools build on top of...

Name Stars Last Commit Description
WhitestormJS GitHub Repo stars GitHub last commit Super-fast 3D framework for Web Applications & Games. Based on Three.js
Phaser GitHub Repo stars GitHub last commit Phaser is a fast, free, and fun open source HTML5 game framework. It uses a custom build of Pixi.js.
OSG.js GitHub Repo stars GitHub last commit Javascript Implementation of OpenSceneGraph
Ammo.js GitHub Repo stars GitHub last commit Direct port of the Bullet physics engine to JavaScript using Emscripten
gl-engine GitHub Repo stars GitHub last commit an experimental ES6 WebGL engine built on stack.gl
GLAM GitHub Repo stars GitHub last commit glam (GL A nd M arkup) is a declarative language for creating 3D web content.
potree GitHub Repo stars GitHub last commit WebGL point cloud viewer for large datasets
plotly.js GitHub Repo stars GitHub last commit Built on top of d3.js and stack.gl, plotly.js is a high-level, declarative charting library.
threeify GitHub Repo stars GitHub last commit threeify is a Typescript 3D library loosely based on three.js.
ROYGBIV GitHub Repo stars GitHub last commit A 3D engine for the Web
shree GitHub Repo stars GitHub last commit lite three.js
Taro GitHub Repo stars GitHub last commit A lightweight 3D game engine for the web.
Alien.js GitHub Repo stars GitHub last commit Alien.js is a MVC design pattern for building single-page applications with ES modules and three.js, intended for developers who are interested in creating their own shaders.

Maps and visualizations

Name Stars Last Commit Description
Mapbox GL JS GitHub Repo stars GitHub last commit Interactive, thoroughly customizable maps in the browser, powered by vector tiles and WebGL.
Deck.gl GitHub Repo stars GitHub last commit WebGL based visualization layers
LumaGL GitHub Repo stars GitHub last commit A JavaScript WebGL Framework for Data Visualization
Cesium GitHub Repo stars GitHub last commit Open-source library for world-class 3D globes and maps.
xeogl GitHub Repo stars GitHub last commit A data-driven 3D visualization engine on WebGL
PhiloGL GitHub Repo stars GitHub last commit A WebGL Framework for Data Visualization, Creative Coding and Game Development
MathBox GitHub Repo stars GitHub last commit Presentation-quality WebGL math graphing
VTK GitHub Repo stars GitHub last commit Visualization Toolkit for the Web
Apache ECharts GitHub Repo stars GitHub last commit A powerful, interactive charting and data visualization library for browser
Troika GitHub Repo stars GitHub last commit A JavaScript framework for interactive 3D and 2D visualizations
@antv/g GitHub Repo stars GitHub last commit A powerful rendering engine for AntV implemented with Canvas2D / SVG / WebGL / WebGPU.

VR

Name Stars Last Commit Description
A-Frame GitHub Repo stars GitHub last commit A web framework for building virtual reality experiences.
PlayCanvas GitHub Repo stars GitHub last commit JavaScript game engine built on WebGL and WebVR

WebAssembly

Name Stars Last Commit Description
GLAS GitHub Repo stars GitHub last commit WebGL in WebAssembly with AssemblyScript
WebRays GitHub Repo stars GitHub last commit Ray Tracing on the Web
mugl GitHub Repo stars GitHub last commit Micro WebGL 2.0 3D Graphics Library for JavaScript and WebAssembly

WebGPU

Name Stars Last Commit Description
RedGPU GitHub Repo stars GitHub last commit RedGPU - Javascript webGPU Engine
sokol GitHub Repo stars GitHub last commit 3D-API wrapper
wgpu GitHub Repo stars GitHub last commit Native WebGPU implementation based on gfx-hal
dawn Dawn, a WebGPU implementation
dgel GitHub Repo stars GitHub last commit A WebGPU engine.
YUE GitHub Repo stars GitHub last commit Personal WebGPU based 3D renderer.
@Maksims
Copy link

Maksims commented Mar 28, 2017

Missing PlayCanvas which has MIT open source engine and collaborative tools in a cloud. Not many engines have tools. And does VR. And is used commercially for visualizations, product customizers, games, ads, and many other things.

Missing Blend4Web as well.

Turbulenz.

But list has loads of libs that actually not in development anymore, which probably worth reconsidering.

@dmnsgn
Copy link
Author

dmnsgn commented Mar 28, 2017

I have updated the gist to reflect the non-exhaustive and not maintained aspects of it.

@terkelg
Copy link

terkelg commented Oct 7, 2017

Saw this today https://github.com/shawn0326/zen-3d, another framework for the list 👍

@dmnsgn
Copy link
Author

dmnsgn commented Oct 17, 2017

@terkelg The never ending list 🤔 Keep them coming, there is much to learn!

@alexkowel
Copy link

alexkowel commented Dec 10, 2017

I think Verge3D is a good candidate to be included in the list as well ))
* [Verge3D](https://www.soft8soft.com/verge3d/): a WebGL-based engine for creating 3D configurators, online stores, 3D presentations, e-learning applications and games.

@spurlockat
Copy link

spurlockat commented Mar 1, 2018

p5.js?

@ChemBioScripting
Copy link

ChemBioScripting commented Aug 2, 2018

Also X3DOM is missing

@roipoussiere
Copy link

roipoussiere commented Oct 16, 2018

Note that lightGL and sceneJS are not longer maintained.

Sources:

@roipoussiere
Copy link

roipoussiere commented Oct 16, 2018

Also it could be useful to add the library minified size. If interested, I started a work here:

@carlsmith
Copy link

carlsmith commented Oct 24, 2018

GLOW is dead. Its homepage (the main link on the page this page links to) is for sale.

@akella
Copy link

akella commented Feb 7, 2019

Add this one =) https://www.martin-laxenaire.fr/libs/curtainsjs/ nice for fullscreen animations with glsl

@munrocket
Copy link

munrocket commented Sep 23, 2019

Potree - point cloud visualization

Copy link

ghost commented Nov 28, 2019

RaptorEngine - An browser based WebGL Engine (With node based material editor) is missing.

Node based Material Editor: https://www.youtube.com/watch?v=l7oOLKeDGCs , https://www.youtube.com/watch?v=GjqOE0suK14

Github: https://github.com/kajdijkstra/RaptorEngine

@fkromer
Copy link

fkromer commented Jan 13, 2020

There is plotly js (charting library) which supports WebGL for scatter plots (scattergl): https://plot.ly/javascript/webgl-vs-svg/

@s0kil
Copy link

s0kil commented Apr 3, 2020

Here is also https://two.js.org/

@nicolasgoudard
Copy link

nicolasgoudard commented Jul 3, 2020

Hello.
I use CreateJS . I had chosen it for high levels function that look like Java AWT (I converted some old project from Java to JS), and this project was supported by Adobe and Microsoft. But there are not updates since 2 or 3 years. Why ??
What is the best library nowadays ? I see Konva but now I am not sure, I want to find a famous project supported buy a large communauty.
Please help me !

@a-x-
Copy link

a-x- commented Sep 30, 2020

Are you know any rich good UI Components Library based on WebGL?

I found only declined one: DreemGL

@kurtsansom
Copy link

kurtsansom commented Nov 6, 2020

@random-yang
Copy link

random-yang commented Nov 9, 2020

data viz: echarts?

@arathore-gaming
Copy link

arathore-gaming commented Dec 24, 2020

What about COCOS? It supports 3D as well now

@langolf
Copy link

langolf commented Mar 17, 2021

@niiloArction
Copy link

niiloArction commented May 27, 2021

Hi, please do include LightningChart JS.

It is a data visualization library that utilizes WebGL, similar like already mentioned ECharts, except that it heavily focuses real-time data inputs and large data sets.

@abasilak
Copy link

abasilak commented Sep 10, 2021

Hi, you can also include WebRays - a GPU-accelerated ray intersection engine for the World Wide Web. It aims to offer a flexible and easy-to-use programming interface for robust and high-performance ray intersection tests on modern browsers.

https://github.com/phasmatic3d/webrays

A gentle introduction to the library (design considerations, best practices, and usage examples for several ray tracing tasks) is recently published at Nvidia's Ray Tracing Gems 2 book: https://link.springer.com/chapter/10.1007/978-1-4842-7185-8_18

@mitsukuri
Copy link

mitsukuri commented Aug 6, 2022

Hello @dmnsgn!

I took a liberty and formatted your list as table, with entries sorted alphabetically and augmented with stars and last commit badges, like this:

name stars last commit description
PixiJS stars GitHub last commit Super fast HTML 5 2D rendering engine that uses webGL with canvas fallback

Feel free to update your gist from mine if you find any added value in it, I'll delete mine if you do so.

[deleted]

@dmnsgn
Copy link
Author

dmnsgn commented Aug 13, 2022

@mitsukuri thanks for your contribution, I have updated with slight modification.

@mitsukuri
Copy link

mitsukuri commented Aug 13, 2022

@dmnsgn My pleasure!

@mitsukuri
Copy link

mitsukuri commented Aug 13, 2022

Found a typo in GLAM's description: GL A nd M arkup -> GL And Markup

@tomerry
Copy link

tomerry commented Sep 20, 2022

mapboxgl

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment