← Back to Awesome

Sections

WebGPU

GitHub repository ↗ synced 2026/8/9

Awesome WebGPU Awesome

Lovely curated list of WebGPU resources, libraries and tools.

WebGPU is a work in progress Web standard from W3C for modern 3D and GPU computing. Its purpose is to get the best performances on recent GPUs from desktop to mobile. Unlike WebGL, WebGPU is not a port of an existing native API. It borrows concepts from Metal, Vulkan and Direct3D12.

Websites

Official websites

GPUWeb

Official GitHub repository.

Official WebGPU Explainer

WebGPU Specifications

History
Editor's Draft

WGSL (WebGPU Shading Language) Specifications

Working Draft
Editor's Draft

API documentations

API quick reference and documentation

WebGPU.rocks.

MDN

MDN WebGPU API references.

Misc

Google Developers Site
107 WebGPU Projects on GitHub

AwesomeOpenSource.com.

r/WebGPU - Reddit

WebGPU Subreddit.

compute.toys

Compute shader playground (like shadertoy).

Shadeup

Language/website that makes experimenting with WebGPU easier.

Tour of WGSL

A quick introduction to the WebGPU Shading Language.

WebGPU Experts Blog

Monthly news about WebGPU.

Browser support

Implementation status

Official W3C Group.

WebGPU browser support overview

CanIUse.com WebGPU.

This is an experimental technology

Chrome

Desktop

WebGPU supported by default on Windows and macOS.

Android

WebGPU is supported by default.

Edge

WebGPU is supported by default.

Chrome and Blink/Chromium based browsers support WebGPU

Firefox

Firefox Nightly

Go to `about:config` and set `dom.webgpu.enabled` to true.

WebGPU support is still experimental

Safari

macOS Safari TP

WebGPU is enabled by default since 190.

macOS Safari

WebGPU enabled by default on macOS 26 Tahoe or later; earlier versions require the `WebGPU` feature flag.

iOS/iPadOS Safari

WebGPU supported by default on iOS/iPadOS 26 or later; earlier versions require `Settings` → `Safari` → `Advanced` → `Feature Flags` → `WebGPU`.

WebGPU support is still experimental

Articles

WebGPU

Wikipedia article.

A Taste of WebGPU in Firefox

Mozilla.org article by Dzmitry Malyshau.

Point of WebGPU native

By Dzmitry Malyshau.

Graphics on the web and beyond with WebGPU

By [Damien Seguin](https://dmnsgn.medium.com/).

Implementing WebGPU in Gecko

By [Dzmitry Malyshau](https://github.com/kvark).

From WebGL to WebGPU in Construct

By Ashley Gullen.

A brief history of graphics on the web and WebGPU

By Ashley Gullen.

WebGPU texture best practices

By Brandon Jones.

WebGPU Buffer upload best practices

By Brandon Jones.

wgpu-rs on the web

Rust Graphics Mages.

Compiling Machine Learning to WASM and WebGPU with Apache TVM

By [Tianqi Chen](https://github.com/tqchen) & [Jared Roesch](https://github.com/jroesch).

The WebAssembly App Gap

By [Paul Butler](https://github.com/paulgb).

Next-generation 3D Graphics on the web

Webkit.org article by [Dean Jackson](https://twitter.com/grorgwork).

Efficently rendering glTF models - A WebGPU Case Study

By [Brandon Jones](https://github.com/toji).

WebGPU - All of the cores, none of the canvas

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).

From WebGL to WebGPU

By Google.

WebGPU for Dummies

By Amir Sojoodi.

WebGPU Timestamps

By Amir Sojoodi.

WebAssembly and WebGPU

Learn how WebAssembly and WebGPU improve ml performance on the web Part2.

Tutorials

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).

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).

Learn wgpu

Tutorial and examples on wgpu, a Rust implementation of WebGPU, by [@sotrh](https://github.com/sotrh)

LearningWebGPU 教程 (Chinese)

By [@hjlld](https://github.com/hjlld).

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).

Build a compute rasterizer in WebGPU

How to build a complete rasterizer using compute shaders, by [Omar Shehata](https://github.com/OmarShehata).

WebGPU Engine Development (Chinese/English)

Development process of WebGPU Engine (C++ and TypeScript).

Learn WebGPU for native C++ development

A tutorial on WebGPU for Desktop applications using wgpu or Dawn, by [@eliemichel](https://github.com/eliemichel).

  • WebGPU for Metal Developers Part 1 and Part 2 - Introduction to WebGPU from Apple's GPU API, Metal, by Warren Moore.
  • From 0 to glTF with WebGPU: Series (repository) - A tutorial to create a glTF model viewer, by Will Usher.

Books

Practical WebGPU Graphics

by [Jack Xu](https://github.com/jack1232)

Libraries

Babylon.js

Open game and rendering engine.

Three.js

Easy-to-use, lightweight, general-purpose 3D library.

PlayCanvas

Web-based game engine with WebGPU support.

PixiJS

2D rendering engine with a WebGPU renderer.

Dawn

Google implementation that powers WebGPU in Chromium, can be used as a standalone package.

wgpu

Mozilla implementation used in Firefox. Like Dawn, can be used as a standalone package.

webgpu-headers

C/C++ headers.

sokol

Simple STB-style cross-platform libraries for C and C++.

RedGPU

JavaScript WbeGPU library, by [@redcamel](https://github.com/redcamel).

WebGPU .NET

.NET bindings, built on top of wgpu.

Deno

Runtime for JavaScript, TypeScript, and WebAssembly based on the V8 engine.

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.

Arche Graphics

WebGPU Graphics Engine.

WebGPU-C++

A single-file zero-overhead C++ idiomatic wrapper, by @eliemichel.

Use.GPU

Reactive/declarative WebGPU runtime.

GEngine

A basic rendering engine based on WebGPU, by junwei.gu.

Thimbleberry

Reusuable WebGPU shaders and support functions.

WebRTX

WebGPU Ray Tracing Extension.

SWGPU

A Simple WebGPU Game Engine.

React Native WebGPU

React Native implementation of WebGPU using Dawn.

TypeGPU

TypeScript API for constructing, writing to and reading from GPU buffers with inferred type-safety.

WESL

WGSL extensions for `import`, `@if`, and more.

WebGpGpu.ts

A WebGPU framework to access compute shaders, browser or server-side, without the steep learning curve.

spark.js

A real-time GPU texture compression library for WebGPU.

zephyr3d

A TypeScript-based 3D rendering engine with WebGPU/WebGL support.

ChartGPU

High-performance charting library built on WebGPU, handles 1M+ data points at 60fps.

Debuggers and Profilers

webgpu-inspector

Inspection debugger for WebGpu.

webgpu-profiler

A profiler for Rust + WebGPU.

webgpu-devtools

Web browser extention.

webgpu-debugger

Early stage debugger.

These have not been updated for a while:

Gists

  • 2D and 3D SDF Primitives - Signed distance field primitives in WGSL, by @munrocket.

Demos

WebGPU Samples

A set of samples and demos demonstrating the use of the WebGPU API - [Repository](https://github.com/webgpu/webgpu-samples)

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)

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)

Spookyball

A Halloween-themed, open source Breakout clone, by Brandon Jones - [Repository](https://github.com/toji/spookyball)

Babylon.js Playground

By [Babylon.js](https://www.babylonjs.com/) (Note: Select `WebGPU` in the top right corner).

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 Particles

Calculate and render particles, by [Daniel Toplak](https://github.com/hsimpson) - [Repository](https://github.com/hsimpson/webgpu-particles)

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)

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)

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-Playground

A playground to experiment with WebGPU, by [@06wj](https://github.com/06wj) - [Repository](https://github.com/06wj/WebGPU-Playground)

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).

WebGPU Compute 101 Demo

A simple example using compute shaders. [source](https://glitch.com/edit/#!/hello-webgpu-compute)

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-Lab

Demos and experiments, focused on compute shaders, by [Sebastian Macke](https://github.com/s-macke) - [Repository](https://github.com/s-macke/WebGPU-Lab)

WebGPU Live Demo Editor

A collection of WebGPU examples by [Hepp Maccoy](https://github.com/hepp) - [Repository](https://github.com/hepp/webgpu-examples)

Thimbleberry Image Transform Demo

An Image processing app built using Thimbleberry, by [mighdoll](https://vis.social/@mighdoll) - [Repository](https://github.com/mighdoll/thimbleberry/tree/main/image-demo)

Shadowray Playground

Demo of WebRTX, an extension of the WebGPU API with ray tracing capabilities, implemented with compute shaders, by [codedhead](https://github.com/codedhead).

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)

Shader Graph WGSL

A node based shader editor, by [deepkolos](https://github.com/deepkolos) - [Repository](https://github.com/deepkolos/shader-graph-wgsl)

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)

Marching Cubes WebGPU

Marching cubes implementation, by [Conor O'Malley](https://github.com/conorpo) - [Repository](https://github.com/conorpo/marching-cubes-webgpu)

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 real-time ray tracer

A real-time ray tracer implementing ReSTIR algorithm - [Repository](https://github.com/C-none/Web-RTRT)

Real-Time GPU Texture Compression Demo

Showcases the advantages of real-time texture compression. Compares models using KTX2 textures against AVIF + Spark.

Right now, demos work best on Chrome/Edge.

Videos

From WebGL to WebGPU: A perspective from Babylon js by David Catuhe
Next-Generation 3D Graphics on the Web (Google I/O 2019)
WebGL to WebGPU (playlist)

By [SketchpunkLabs](https://www.youtube.com/c/SketchpunkLabs)

WebGPU (playlist)

By [Genka](https://www.youtube.com/channel/UCBTwKzJg-BR56tKWO5CT7XA)

WebGPU Graphics Programming Step-by-Step (playlist)

By [Practical Programming with Dr. Xu](https://www.youtube.com/channel/UCg14XfqXim0vpgabU3T7tRg)

Introducing WebGPU: Unlocking modern GPU access for JavaScript

By Google.

A proper look at WebGPU for native games

By [Madrigal](https://www.madrigalgames.com/)

Presentations

Building WebGPU with Rust

By Dzmitry Malyshau from Mozilla.

Community

GPU for the web community group

W3C Community.

Public GPU

W3C Mailing list.

Matrix WebGPU

Unofficial channel.

YC Point of WebGPU on native

Discussion regarding this article.

Bug reporting

Webkit
Firefox
Chromium

To the extent possible under law, Mik Bry has waived all copyright and related or neighboring rights to this work.

Contributions welcome! Read the contribution guidelines first.