wgpu

wgpu is a safe and portable graphics library for Rust based on the WebGPU API. It is suitable for general purpose graphics and compute on the GPU.

Applications using wgpu run natively on Vulkan, Metal, DirectX 12, and OpenGL ES; and browsers via WebAssembly on WebGPU and WebGL2.

# Bindings


Ported wgpu? Make a PR, and reach out to us on #wgpu-users!


Language
C wgpu-native Official native WebGPU implementation.
C++ WebGPU-C++ An auto-generated C++ wrapper, developed for the Learn WebGPU course.
Crystal wgpu-crystal Bindings to wgpu-native for the Crystal programming language.
D bindc-wgpu WebGPU for D, based on the BindBC library loader.
Go go-webpgu Zero-CGO wrapper for Go.
Jai jai_wgpu_native Raw Jai bindings.
Julia WebGPUNative.jl Stable Julia wrapper.
WebGPU.jl An experimental Julia wrapper.
JVM jWebGPU WebGPU Java bindings for wgpu-native and Dawn.
gdx-webgpu Extensions to support jWebGPU on LibGDX.
kgpu/wgpuj Java and Kotlin/JVM wrapper.
vulkan4j Java 22+ wrapper (using FFM).
Kotlin wgpu4k-native Work-in-progress Kotlin/Multiplatform bindings for wgpu.
wgpu4k Work-in-progress Kotlin/Multiplatform bindings for WebGPU.
multiplatform-wgpu Multiplatform Kotlin/Native bindings for wgpu.
.NET Silk.NET The (official .NET) high-speed WebGPU bindings library your mother warned you about.
Alimer.Bindings.WebGPU Cross platform .NET bindings.
WGPU.NET
Perl WebGPU::Direct Direct access to WebGPU native APIs from Perl.
Python wgpu-py WebGPU for python.
Scopes scopes-libraries/wgpu Scopes wrapper for wgpu.
Zig wgpu_native_zig Zig bindings for wgpu-native.

# Showcase


Made something cool with wgpu? Make a PR, and reach out to us on #wgpu-users!