WebGPU and WGSL (WebGPU Shading Language) are W3C standards for GPU acceleration on the Web. There are also implementations of WebGPU in other languages, for both WebAssembly and native applications.
webgpu.org is a work in progress - contribute here!
- WebGPU Implementation Status - status of different browsers/OSes
- WebGPU Report - see what's available on your current system
- The
public-gpu@w3.orgmailing list is a good place to ask questions or provide feedback on the API. - You can also join the chat on Matrix in the "Web Graphics" Matrix Community: #webgraphics:matrix.org.
- The general WebGPU channel is #WebGPU:matrix.org.
- WebGPU Samples - sample code and demos of various features and graphics/compute techniques
- WebGPU Fundamentals - tutorials and articles on many WebGPU and graphics topics
- WebGPU on MDN - API documentation
- Tour of WGSL - tutorials on WGSL (WebGPU Shading Language)
- WebGPU API Specification Draft
- WGSL Specification Draft
- WebGPU Correspondence Reference - contributions wanted
- wgpu - Rust, used in Firefox, Servo, and Deno
- Available for: Rust, C (wgpu-native - contributions wanted)
- Native + WebAssembly
- Dawn - C++, used in Chrome, Edge, and other Chromium browsers
- Available for: C, C++, Node
- Native only
- Emdawnwebgpu - bindings for Emscripten
- WebAssembly only, via Emscripten