awesome-webgpu
😎 Curated list of awesome things around WebGPU ecosystem.
https://github.com/mikbry/awesome-webgpu
Last synced: 12 days ago
JSON representation
-
AI libraries
-
Safari
- WebLLM - Browser language-model inference engine accelerated with WebGPU.
- ONNX Runtime Web - Browser inference runtime with a WebGPU execution provider for ONNX models.
- Transformers.js - JavaScript machine-learning library with WebGPU acceleration through ONNX Runtime.
-
-
Articles
-
Safari
- WebGPU - Wikipedia article.
- From WebGL to WebGPU in Construct - By Ashley Gullen.
- WebGPU texture best practices - By Brandon Jones.
- WebGPU Buffer upload best practices - By Brandon Jones.
- The WebAssembly App Gap - By [Paul Butler](https://github.com/paulgb).
- WebGPU - All of the cores, none of the canvas - Compute concepts and browser support as of 2022, by [Surma](https://github.com/surma).
- WebGPU Fundamentals - A set of articles to help learn WebGPU.
- PBR in WebGPU: implementation details - By [Tomasz Czajecki](https://github.com/tchayen).
- I want to talk about WebGPU - By [Andi](https://mastodon.social/@mcc).
- WebGPU for Dummies - By Amir Sojoodi.
- WebGPU Timestamps - By Amir Sojoodi.
- Efficently rendering glTF models - A WebGPU Case Study - By [Brandon Jones](https://github.com/toji).
- WebAssembly and WebGPU - Browser machine-learning performance enhancements, by Google.
- Graphics on the web and beyond with WebGPU - By [Damien Seguin](https://dmnsgn.medium.com/).
- I want to talk about WebGPU - By [Andi](https://mastodon.social/@mcc).
- Figma rendering: Powered by WebGPU - Production renderer migration case study covering shaders, batching, and fallbacks (2025).
- Compatibility mode and transient attachments - Chrome 146 implementation update covering broader hardware support and attachment optimizations (2026).
- Immediates in Chrome 149–150 - Browser implementation update on passing small amounts of frequently changed shader data (2026).
- WebGPU texture best practices - By Brandon Jones.
- WebGPU Buffer upload best practices - By Brandon Jones.
- Efficiently rendering glTF models - A WebGPU Case Study - By [Brandon Jones](https://github.com/toji).
- From WebGL to WebGPU - By Google.
- WebGPU for Dummies - By Amir Sojoodi.
-
Try out WebGPU
- Graphics on the web and beyond with WebGPU - medium.com (by [Damien Seguin](https://dmnsgn.medium.com/))
- From WebGL to WebGPU - by Google
-
-
Books
-
Try out WebGPU
- Practical WebGPU Graphics - by [Jack Xu](https://github.com/jack1232)
-
-
Browser support
-
Chrome
- Android - WebGPU is supported by default.
-
Chromium
-
Firefox
- Firefox Nightly - Preview implementation for testing upcoming support, including Linux and other Mac configurations.
- Firefox - Enabled on Windows and Apple Silicon Macs; other platforms have different rollout schedules.
-
Misc
- Implementation status - Platform support and rollout details maintained by GPUWeb.
- WebGPU browser support overview - Browser compatibility tables.
- WebGPU Report - Inspect the WebGPU features and limits available on your device.
-
Safari
- iOS/iPadOS Safari - WebGPU supported by default on iOS/iPadOS 26 or later; earlier versions require `Settings` → `Safari` → `Advanced` → `Feature Flags` → `WebGPU`.
- Safari Technology Preview - Preview browser for testing upcoming implementation changes.
- macOS Safari - WebGPU enabled by default on macOS 26 Tahoe or later; earlier versions require the `WebGPU` feature flag.
- Safari 26 release notes - WebGPU ships enabled on macOS Tahoe 26, iOS 26, iPadOS 26, and visionOS 26.
-
Try out WebGPU
- Chrome Canary - unsafe-webgpu` and enable the "Unsafe WebGPU" flag.
- Firefox Nightly
- Safari Technology Preview
-
- Register for Google Chrome origin trial - Chrome Developers
- Chrome Platform Status - Chrome Developers
- WebGPU and WSL in Safari - WebKit
- Servo MVP - WebGPU MVP
-
-
Bug reporting
-
Community
-
Safari
- GPU for the web community group - W3C Community.
- Public GPU - W3C Mailing list.
- Matrix WebGPU - General community chat.
-
Try out WebGPU
- Possibility of SPIR-V and/or GLSL as a WebGPU extension? - WGSL in debate
-
-
Debuggers and Profilers
-
Safari
- webgpu-profiler - A profiler for Rust + WebGPU.
- webgpu-recorder - A WebGPU playback recorder.
- webgpu-inspector - Inspection debugger for WebGPU.
- WebGPU Dev Extension - Browser extension for validation diagnostics, memory tracking, and redundant-state detection.
- WebGPUReconstruct - Capture browser commands and replay them through native implementations for graphics debugging and profiling.
- wgpu-profiler - GPU timing and profiling utilities for Rust applications using wgpu.
-
-
Demos
-
Safari
- Three.js WebGPU examples - A collection of examples from three.js using the WebGPU renderer - [Repository](https://github.com/mrdoob/three.js/tree/dev/examples#:~:text=webgpu_compute.html)
- Babylon.js Playground - By [Babylon.js](https://www.babylonjs.com/) (Note: Select `WebGPU` in the top right corner).
- WebGPU Live Demo Editor - A collection of WebGPU examples by [Hepp Maccoy](https://github.com/hepp) - [Repository](https://github.com/hepp/webgpu-examples)
- Shadowray Playground - Demo of an experimental ray-tracing layer implemented with WebGPU compute shaders.
- Web Stable Diffusion - Early browser image-generation demo using WebGPU, with [source code](https://github.com/mlc-ai/web-stable-diffusion).
- WebGPU Memory Model Testing - Memory models testing suite, by [Reese Levine](https://github.com/reeselevine) et al., UC Santa Cruz - [Repository](https://github.com/reeselevine/webgpu-litmus)
- WebGPU Path Tracing - A path tracer powered by WebGPU compute shaders, by [Fermin Lozano](https://github.com/ferminLR) - [Repository](https://github.com/ferminLR/webgpu-path-tracing)
- WebGPU first-person exploration of the Sponza Palace - Scene render comparison between WebGL, WebGL 2.0 and WebGPU, by Brandon Jones - [Repository](https://github.com/toji/webgpu-test)
- WebGPU Clustered Shading - By Brandon Jones - [Repository](https://github.com/toji/webgpu-clustered-shading)
- WebGPU Metaballs - By Brandon Jones - [Repository](https://github.com/toji/webgpu-metaballs)
- WebGPU External Texture Test - By Brandon Jones - [Repository](https://github.com/toji/webgpu-external-test)
- Online WGSL Editor - By [Takahiro](https://github.com/takahirox) - [Repository](https://github.com/takahirox/online-wgsl-editor)
- WebGPU Particles - Calculate and render particles, by [Daniel Toplak](https://github.com/hsimpson) - [Repository](https://github.com/hsimpson/webgpu-particles)
- WebGPU Examples - A few examples of rendering algorithms implemented in WebGPU, by [Tarek Sherif](https://github.com/tsherif) - [Repository](https://github.com/tsherif/webgpu-examples)
- WebGPU-Playground - A playground to experiment with WebGPU, by [@06wj](https://github.com/06wj) - [Repository](https://github.com/06wj/WebGPU-Playground)
- WebGPU-Lab - Demos and experiments, focused on compute shaders, by [Sebastian Macke](https://github.com/s-macke) - [Repository](https://github.com/s-macke/WebGPU-Lab)
- Shader Graph WGSL - A node based shader editor, by [deepkolos](https://github.com/deepkolos) - [Repository](https://github.com/deepkolos/shader-graph-wgsl)
- Marching Cubes WebGPU - Marching cubes implementation, by [Conor O'Malley](https://github.com/conorpo) - [Repository](https://github.com/conorpo/marching-cubes-webgpu)
- WebGPU Samples - A set of samples and demos demonstrating the use of the WebGPU API - [Repository](https://github.com/webgpu/webgpu-samples)
- wgpu examples - Official list of examples from the [wgpu](https://wgpu.rs) library - [Repository](https://github.com/gfx-rs/wgpu/tree/trunk/examples)
- Forest WebGPU - A scene built with Babylon.js.
- WebGPU 2D Fluid Simulation - An implementation of "Real-Time Fluid Dynamics for Games" paper, by [kishimisu](https://github.com/kishimisu) - [Repository](https://github.com/kishimisu/WebGPU-Fluid-Simulation)
- WebGPU Compute 101 Demo - A simple example using compute shaders. [source](https://glitch.com/edit/#!/hello-webgpu-compute)
- Web Stable Diffusion - An implementation of the image generator AI model, by CMU, OctoML, Catalyst et al - [Repository](https://github.com/mlc-ai/web-stable-diffusion)
- WebLLM - LLM inference engine, by CMU, University of Washington, OctoML, et al - [Repository](https://github.com/mlc-ai/web-llm)
- Real-Time GPU Texture Compression Demo - Showcases the advantages of real-time texture compression. Compares models using KTX2 textures against AVIF + Spark.
- PlayCanvas WebGPU Demos - By [PlayCanvas](https://playcanvas.com/) (Note: Select `WebGPU` in the top right corner).
- Project Prismatic - Stratton Studios Unity-powered WebGPU experience/demo.
- WebGPU real-time ray tracer - A real-time ray tracer implementing ReSTIR algorithm - [Repository](https://github.com/C-none/Web-RTRT)
- Project Prismatic - Stratton Studios Unity-powered WebGPU experience/demo.
- An online WebGPU calculator - An online calculator, but you can only use it on your remote friend's GPU (via WebRTC) - [Repository](https://github.com/periferia-labs/laskin.live)
- vgpu Shader on Live HTML - Shader demo applying WebGPU effects to HTML content; requires the experimental canvas-draw-element browser flag.
- RunMat Browser Sandbox - Browser playground for MATLAB-syntax numerical programs accelerated with WebGPU.
- DoG Studio - WebGPU image and video processing demo for configurable Difference-of-Gaussians line art and screentone effects, with [source code](https://github.com/dpfens/dogpack).
- Points examples - Generative art demos covering particles, render passes, and other WebGPU techniques.
-
Try out WebGPU
- WebGPU Samples - by [Austin Eng](https://github.com/austinEng) (Google) - [repository](https://github.com/austinEng/webgpu-samples)
- WebGPUniverse - by students from Imperial College London
- Spookyball: a WebGPU-powered, Halloween-themed game - by [Brandon Jones](https://github.com/toji) - [repository](https://github.com/toji/spookyball)
- An online WebGPU calculator - [repository](https://github.com/periferia-labs/laskin.live)
- WebGPU examples - by [wgpu.rs](https://wgpu.rs) - [repository](https://github.com/gfx-rs/wgpu/tree/master/wgpu/examples)
- Three.js WebGPURenderer - by [Takahiro](https://github.com/takahirox) - [repository](https://github.com/takahirox/THREE.WebGPURenderer)
- Forest WebGPU - by [Babylon.js](https://www.babylonjs.com)
- WebGPU Experiments - by [Will Usher](https://github.com/Twinklebear) - [repository](https://github.com/Twinklebear/webgpu-experiments)
- WGSL-Toy - by [@HypnosNova](https://github.com/HypnosNova) - [repository](https://github.com/ValeeraJS/WGSL-Toy)
- WebGPU Compute 101 Demo - [source code](https://glitch.com/edit/#!/hello-webgpu-compute)
- WebGPU: Rendering, compute, GPU experiments - by [Kevin Masson](https://github.com/oktomus) - [repository](https://github.com/oktomus/web-experiments)
- Thimbleberry Image Transform Demo - by [mighdoll](https://vis.social/@mighdoll) - [repository](https://github.com/mighdoll/thimbleberry/tree/main/image-demo)
- WebGPU study - by [Redcamel](https://github.com/redcamel) - [repository](https://github.com/redcamel/webgpu)
- WebGPU point cloud - by [Markus Schütz](https://github.com/m-schuetz) - [repository](https://github.com/m-schuetz/webgpu_pointcloud)
- node-webgpu examples - by [Felix Maier](https://github.com/maierfelix)
- WebGPU Sketch Dojo - by [Georgi Nikolov](https://github.com/gnikoloff) - [repository](https://github.com/gnikoloff/webgpu-dojo)
- WebGPU Compute Metaballs - by [Georgi Nikolov](https://github.com/gnikoloff) - [repository](https://github.com/gnikoloff/webgpu-compute-metaballs)
- WebGPU 2D Fluid Simulation - by [indiana-dev](https://github.com/indiana-dev) - [repository](https://github.com/indiana-dev/WebGPU-Fluid-Simulation)
-
-
Gists
-
Safari
- 2D - Signed distance field primitives in WGSL, by [@munrocket](https://github.com/munrocket).
-
Try out WebGPU
- 3D SDF Primitives - in WGSL by @munrocket
-
-
Historical resources
-
Safari
- A Taste of WebGPU in Firefox - Mozilla.org article by Dzmitry Malyshau.
- Point of WebGPU native - By Dzmitry Malyshau.
- Implementing WebGPU in Gecko - By [Dzmitry Malyshau](https://github.com/kvark).
- A brief history of graphics on the web and WebGPU - By Ashley Gullen.
- wgpu-rs on the web - Rust Graphics Mages.
- Compiling Machine Learning to WebAssembly and WebGPU with Apache TVM - By [Tianqi Chen](https://github.com/tqchen) & [Jared Roesch](https://github.com/jroesch).
- Next-generation 3D Graphics on the web - Webkit.org article by [Dean Jackson](https://twitter.com/grorgwork).
- Raw WebGPU - An overview on how to write a WebGPU application, by [Alain Galvan](https://github.com/alaingalvan).
- Basic WebGPU Rendering - Summary of the steps to render a scene, by [@ndesmic](https://github.com/ndesmic).
- WebGPU for Metal Developers Part 1 - part-two/) - Introduction to WebGPU from Apple's GPU API, Metal, by [Warren Moore](https://twitter.com/warrenm).
- Real-Time Ray-Tracing in WebGPU - Building a Ray tracer using a modified version of WebGPU implementation with Vulkan and DX12 ray tracing extensions, by [Felix Maier](https://github.com/maierfelix).
- From WebGL to WebGPU: A perspective from Babylon js by David Catuhe
- Next-Generation 3D Graphics on the Web (Google I/O 2019)
- Building WebGPU with Rust - By Dzmitry Malyshau from Mozilla.
- YC Point of WebGPU on native - Discussion regarding this article.
- webgpu-devtools - Legacy alpha browser extension.
- webgpu-debugger - Legacy alpha debugger.
- Dawn RT - A fork of dawn with Ray tracing extensions, by Felix Maier.
- wgpu-load-test - A wgpu stress test, by [Alexis Andre](https://github.com/MacTuitui).
- Mik Bry
-
-
Libraries
-
Safari
- Babylon.js - Open game and rendering engine.
- Dawn - Google implementation that powers WebGPU in Chromium, can be used as a standalone package.
- wgpu - Cross-platform Rust graphics API based on WebGPU, used by Firefox and native applications.
- webgpu-headers - C/C++ headers.
- RedGPU - JavaScript WebGPU library, by [@redcamel](https://github.com/redcamel).
- WebGPU .NET - Browser-focused .NET bindings for the Emscripten WebGPU API.
- RedCube - glTF viewer based on a WebGPU backend.
- hwoa-rang-gpu - Micro WebGPU rendering & compute library.
- wgsl_reflect - A WebGPU Shading Language parser and reflection library for JavaScript.
- WebGPU-C++ - A single-file zero-overhead C++ idiomatic wrapper, by @eliemichel.
- GEngine - A basic rendering engine based on WebGPU, by junwei.gu.
- Thimbleberry - Reusable WebGPU shaders and support functions.
- WebRTX - Experimental ray-tracing layer implemented with WebGPU compute shaders.
- Three.js - 3D library with WebGPURenderer and Three.js Shading Language (TSL) for shader authoring.
- Deno - Runtime for JavaScript, TypeScript, and WebAssembly based on the V8 engine.
- Arche Graphics - WebGPU Graphics Engine.
- React Native WebGPU - React Native implementation of WebGPU using Dawn.
- TypeGPU - Type-safe toolkit for GPU resources and shaders authored in TypeScript.
- WESL - WGSL extensions for `import`, `@if`, and more.
- sokol - Simple STB-style cross-platform libraries for C and C++.
- WebGPU .NET - .NET bindings, built on top of wgpu.
- GEngine - A basic rendering engine based on WebGPU, by junwei.gu.
- WebGpGpu.ts - A WebGPU framework to access compute shaders, browser or server-side, without the steep learning curve.
- Use.GPU - Reactive/declarative WebGPU runtime.
- spark.js - A real-time GPU texture compression library for WebGPU.
- SWGPU - A Simple WebGPU Game Engine.
- PlayCanvas - Web-based game engine with WebGPU support.
- PixiJS - 2D rendering engine with a WebGPU renderer.
- zephyr3d - A TypeScript-based 3D rendering engine with WebGPU/WebGL support.
- ChartGPU - Interactive charting library using WebGPU for rendering.
- luma.gl - Graphics and compute toolkit with WebGPU and WebGL backends.
- webgpu-utils - Helpers for buffer layouts, textures, mipmaps, and bind groups.
- Emdawnwebgpu - Dawn-maintained WebGPU bindings for Emscripten applications.
- wgpu-native - Native C interface to the Rust wgpu implementation.
- Vello - Experimental Rust 2D vector renderer using wgpu and GPU compute.
- Deno - JavaScript and TypeScript runtime with WebGPU support through the `--unstable-webgpu` flag.
- WESL - Community WGSL extensions for `import`, `@if`, and more.
- vgpu - TypeScript WebGPU library with typed WGSL imports and a shared API for browsers, Node.js, and tests.
- RunMat - GPU-accelerated numerical computing runtime for MATLAB-syntax programs, with browser execution through WebAssembly and WebGPU.
- Vienna WebGPU Engine - Educational C++ game engine built on WebGPU, with rendering tutorials and native and browser backends.
- Points - Generative art library built with WebGPU.
- fisheye.js - WebGPU compute library for fisheye image and video correction using WebCodecs.
-
Try out WebGPU
- Webcore module WebGPU - Webkit / Safari
- sokol - WebGPU Backend TODO
- Deno roadmap - GPU APIs (WebGPU) to support ML apps
- Arche Graphics - WebGPU Graphics Engine
- Three.js - Experimental support
- bgfx - WebGPU/Dawn experimental
- WebGPU for Node - Based on Dawn
- Haiku - 2D & 3D WebGPU Game Engine written in TypeScript
- SWGPU - A Simple WebGPU Game Engine
-
-
Presentations
-
Try out WebGPU
- Tint - Proposal for textual shader language by Google
-
-
Tutorials
-
Safari
- Get started with GPU Compute on the Web - Tutorial on how to use WebGPU for non-graphical applications, by [François Beaufort](https://github.com/beaufortfrancois).
- Build a compute rasterizer in WebGPU - How to build a complete rasterizer using compute shaders, by [Omar Shehata](https://github.com/OmarShehata).
- Learn wgpu - Tutorial and examples on wgpu, a Rust implementation of WebGPU, by [@sotrh](https://github.com/sotrh)
- LearningWebGPU 教程 (Chinese) - Tutorials using WGSL; the older GLSL-to-SPIR-V branch is deprecated.
- From 0 to glTF with WebGPU: Series - 0-to-gltf?tab=readme-ov-file) - A tutorial to create a glTF model viewer, by [Will Usher](https://github.com/Twinklebear).
- WebGPU Engine Development (Chinese/English) - Development process of WebGPU Engine (C++ and TypeScript).
- Your first WebGPU app - Google codelab introducing rendering and compute with a Game of Life simulation.
- Learn vgpu - Interactive introduction to the vgpu API with live WGSL editing.
-
Try out WebGPU
- From 0 to glTF with WebGPU: The First Triangle - to-gltf-triangle)) - by [Will Usher](https://github.com/Twinklebear)
-
Programming Languages
Categories
Sub Categories
Keywords
webgpu
28
gpu
8
wgsl
8
javascript
7
webgl
6
graphics
5
wglsl
3
3d
3
rust
2
vulkan
2
gpgpu-computing
2
w3c
2
opengl
2
metal
2
gltf
2
typescript
2
webgl2
2
computer-graphics
2
d3d12
2
csharp
1
dotnet
1
threejs
1
dotnet-core
1
evergine
1
netstandard
1
waveengine
1
3d-models
1
glsl
1
opengl-es
1
pbr
1
gpu-computing
1
lecture-notes
1
cpp
1
javascript-webgpu-library
1
javascript-webgpu-engine
1
vulkan-api
1
sdl
1
rendering
1
glfw
1
gles
1
gamedev
1
engine
1
directx-12
1
directx-11
1
directx
1
jit-compiler
1
jupyter
1
linear-algebra
1
mathematics
1
matlab
1