CATEGORY
Rendering::Graphics APIs 289 crates
Data as of 2026-07-25 (crates.io database dump, timestamp 2026-07-25T02:00:36Z). Source: crates.io · db-dump.tar.gz · methodology & corrections.
gl_generatorCode generators for creating bindings to the Khronos OpenGL APIs.30,953,681Apache-2.0
ashVulkan bindings for Rust29,845,569MIT OR Apache-2.0
khronos_apiThe Khronos XML API Registry, exposed as byte string constants.28,345,143Apache-2.0
gpu-allocatorMemory allocator for GPU memory in Vulkan and DirectX 1214,266,894MIT OR Apache-2.0
hassle-rsHLSL compiler library, this crate provides an FFI layer and idiomatic rust wrappers for the new DXC HLSL compiler and validator.4,945,919MIT
glOpenGL bindings3,493,845Apache-2.0
skia-safeSafe Skia Bindings for Rust3,159,639MIT
skia-bindingsSkia Bindings for Rust3,146,069MIT
gliumElegant and safe OpenGL wrapper.
Glium is an intermediate layer between OpenGL and your application. You still need to manually…2,914,340Apache-2.0
vulkanoSafe wrapper for the Vulkan graphics API1,951,600MIT OR Apache-2.0
vk-parseVulkan specification parser1,889,580Apache-2.0/MIT
miniquadCross-platform window context and rendering library.1,815,969MIT OR Apache-2.0
piston2d-graphicsA library for 2D graphics that works with multiple back-ends1,756,746MIT
pietAn abstraction for 2D graphics.1,576,268Apache-2.0 OR MIT
gfxA high-performance, bindless graphics API1,522,132Apache-2.0
piet-coregraphicsCoreGraphics backend for Piet 2D graphics abstraction.1,227,725Apache-2.0 OR MIT
ash-windowInterop library between ash and raw-window-handle1,110,148MIT OR Apache-2.0
vulkano-macrosMacros used by vulkano929,444MIT OR Apache-2.0
piet-commonSelection of a single preferred backend for Piet.620,158Apache-2.0 OR MIT
piet-cairoCairo backend for Piet 2D graphics abstraction.562,816Apache-2.0 OR MIT
vulkano-shadersMacro for generating Rust code from shaders538,502MIT OR Apache-2.0
bevy-glsl-to-spirvDeprecated. This crate is a temporary measure until native rust shader compilation like https://github.com/gfx-rs/naga lands.468,642MIT/Apache-2.0
piet-direct2dDirect2D backend for Piet 2D graphics abstraction.435,729Apache-2.0 OR MIT
piet-webWeb canvas backend for Piet 2D graphics abstraction.397,751Apache-2.0 OR MIT
vulkano-winLink between vulkano and winit377,647MIT OR Apache-2.0
vk-sysBindings for the Vulkan graphics API331,993MIT/Apache-2.0
glsl-to-spirvDeprecated. Use shaderc-rs instead.250,380MIT/Apache-2.0
luminanceStateless and type-safe graphics framework218,658BSD-3-Clause
raui-coreRAUI application layer150,675MIT OR Apache-2.0
vk-memRust ffi bindings and idiomatic wrapper for AMD Vulkan Memory Allocator (VMA)139,077MIT/Apache-2.0
rauiRenderer Agnostic User Interface132,157MIT OR Apache-2.0
raui-json-rendererRAUI renderer for JSON format129,061MIT OR Apache-2.0
imgui-wgpuA wgpu render backend for imgui-rs.127,426MIT OR Apache-2.0
raui-materialMaterial components library for RAUI126,775MIT OR Apache-2.0
raui-deriveMacros for Renderer Agnostic User Interface107,908MIT OR Apache-2.0
allegro-sysAllegro 5 core library Rust binding107,387Zlib
speedy2dHardware-accelerated drawing of shapes, images, and text, with an easy to use
API. Speedy2D aims to be the simplest Rust API for…104,861Apache-2.0
sciter-rsRust bindings for Sciter - Embeddable HTML/CSS/script engine (cross-platform desktop GUI toolkit). Also capable with DirectX /…104,491MIT
allegroAllegro 5 core library Rust wrapper100,489Zlib
luminance-glfwGLFW support for luminance98,736BSD-3-Clause
imgui-opengl-rendererAn OpenGL renderer for imgui-rs97,256MIT/Apache-2.0
raui-tesselate-rendererRAUI renderer that tesselates layout into vertex and index buffers96,922MIT OR Apache-2.0
luminance-glOpenGL backends for luminance94,654BSD-3-Clause
tracel-ashVulkan bindings for Rust90,472MIT OR Apache-2.0
luminance-deriveProcedural macros for deriving luminance traits88,864BSD-3-Clause
spirv-cross-sysRaw bindings to SPIRV-Cross86,729MIT OR Apache-2.0
eruptVulkan API bindings75,996Zlib
webgl_generatorCode generators for creating bindings to the WebGL APIs.72,989Apache-2.0
luminance-windowingCommon windowing code for luminance; DEPRECATED!72,608BSD-3-Clause
raui-immediateRAUI immediate mode UI layer71,088MIT OR Apache-2.0
webgl_stdwebWebGL bindings (stdweb)69,029Apache-2.0
raui-retainedRAUI retained mode UI layer67,207MIT OR Apache-2.0
raui-immediate-widgetsWidgets library for RAUI immediate mode UI layer66,833MIT OR Apache-2.0
nsiNodal Scene Interface for (offline) 3D renderers – ɴsɪ.66,503MIT OR Apache-2.0 OR Zlib
win_desktop_duplicationSimple and efficient DXGI desktop duplication api65,284MIT OR Apache-2.0
raui-appRAUI application layer to focus only on making UI63,622MIT OR Apache-2.0
dxlibdxlib dll for Rust62,826MIT
raui-binary-rendererRAUI renderer for binary data format60,983MIT
raui-html-rendererRAUI renderer for simple HTML static webpages60,443MIT
raui-ron-rendererRAUI renderer for RON format60,101MIT
raui-yaml-rendererRAUI renderer for YAML format58,538MIT
raui-ggez-rendererRAUI renderer for GGEZ game engine54,289MIT
vkxmlParse vulkan's XML API registry.52,363MIT
d3d12-descriptor-heapDescriptor heap allocator for Direct3D 1248,945MIT OR Apache-2.0
ash-trayA Tray to host Ash with Winit48,540MIT
vyre-driver-wgpuwgpu backend for vyre IR - implements VyreBackend, owns GPU runtime, buffer pool, pipeline cache45,107MIT OR Apache-2.0
gl46Bindings to OpenGL 4.6 (plus some extensions)44,752Zlib OR Apache-2.0 OR MIT
ascheProvides an abstraction layer above erupt to easier use Vulkan in Rust.43,772Zlib OR MIT OR Apache-2.0
vulkano-utilUtility functionality to make usage of vulkano easier41,546MIT OR Apache-2.0
acrylic-webcompile acrylic apps to web-assembly40,433MIT
luminance-glutinGlutin support for luminance40,029BSD-3-Clause
vk-allocA segregated list memory allocator for Vulkan.39,586Zlib OR MIT OR Apache-2.0
playdate-graphicsHigh-level graphics API built on-top of Playdate API39,060MIT OR Apache-2.0
gl33Bindings to OpenGL 3.3 + GL_KHR_debug38,226Zlib OR Apache-2.0 OR MIT
adiUltra-portable hardware interface for platform-agnostic applications.36,069MIT / BSL-1.0
dxlib_sample_0001sample dxlib dll for Rust35,847MIT
turtleLearn the Rust language by creating animated drawings!34,142MPL-2.0
adi_screenInterface with a computer/phone screen screen to render graphics.32,033MIT / BSL-1.0
sensehat-screenA library for using the 8x8-LED matrix, with RGB565 coloring, on the Raspberry Pi Sense HAT device.31,267MIT
piet-svgSVG backend for Piet 2D graphics abstraction.30,917Apache-2.0 OR MIT
vksVulkan FFI bindings and symbol loader. Vulkan 1.0.59 and all extensions are supported.30,578ISC
playdate-spriteHigh-level sprite API built on-top of Playdate API28,009MIT OR Apache-2.0
bgfx-rsBindings for bgfx27,636BSD-2-Clause
bgfx-syslow-level FFI bindings for bgfx27,507BSD-2-Clause
nanovgIdiomatic bindings to the NanoVG library26,958MIT/Zlib
daciteMostly safe low-level Vulkan library26,565ISC
raui-tetra-rendererRAUI renderer for Tetra game engine26,252MIT
luminance-webglWebGL backend for luminance25,101BSD-3-Clause
asi_vulkanRust safe bindings for Vulkan.24,969MIT / BSL-1.0
asi_openglRust safe bindings for OpenGL / OpenGLES.24,656MIT / BSL-1.0
rusty-d3d12Low-level D3D12 bindings for Rust.24,256MIT
luminance-frontluminance re-exported with a backend picked at compile-time23,834BSD-3-Clause
adi_gpu_vulkanVulkan implementation for adi_gpu22,960MIT / BSL-1.0
fyrox-graphicsGraphics API abstraction for Fyrox Game Engine22,621MIT
nobs-vkA very basic, non rich wrapper for binding vulkan commands and extension loading20,774MIT
acrylic-waylandcompile acrylic apps for wayland environments20,772MIT
adi_gpuGPU interface - render graphics and do fast calculations20,306MIT / BSL-1.0
vulkan-bindingsBindings for the Vulkan API generated from Khronos spec (vk.xml)19,858MIT OR Apache-2.0
nanovg-sysNative bindings to the NanoVG library18,654MIT/Zlib
luminance-sdl2SDL2 support for luminance17,928BSD-3-Clause
adi_gpu_openglOpenGL implementation for adi_gpu17,732MIT / BSL-1.0
luminance-web-sysweb-sys luminance platform17,102BSD-3-Clause
vk-sync-forkSimplification of core Vulkan synchronization mechanisms such as pipeline barriers and events. Forked off of the original vk-sync…16,646MIT/Apache-2.0
dxfilterProcess textures with DirectX shaders. Includes few Scale, Color conversion filters and utils to make your own.16,207MIT OR Apache-2.0
quaternion-matrixquaternion matrix for Rust16,052MIT
raui-quick-startRAUI quick start module for easier playground experience15,599MIT
ndspy-sysAuto-generated Rust bindings for the RenderMan/3Delight|NSI display driver API.15,125MIT OR Apache-2.0 OR Zlib
piet-hardwareToolkit for creating GPU accelerated 2D graphics applications15,069LGPL-3.0-or-later OR MPL-2.0
sierraVulkan-lite graphics API14,951MIT OR Apache-2.0
luminance-std140Std140 types and trait for OpenGL-based luminance backends14,897BSD-3-Clause
vk-syncSimplification of core Vulkan synchronization mechanisms such as pipeline barriers and events.14,709MIT/Apache-2.0
flo_renderStreaming API for rendering graphics on hardware14,707Apache-2.0
voodooAn intuitive, idiomatic, unopinionated, zero-overhead Vulkan API14,495MIT/Apache-2.0
drawingAPI for 2D graphics library14,420MIT OR Apache-2.0
grafoA GPU-accelerated rendering library for Rust14,259Apache-2.0/MIT
fyrox-graphics-glOpenGL-based graphics server for Fyrox Game Engine13,204MIT
gl_generator_profiling_structProfilingStructGenerator for gl_generator12,752MIT OR Apache-2.0
piet-wgpuA hardware-accelerated 2D graphics backend for piet using wgpu12,519LGPL-3.0-or-later OR MPL-2.0
oxidxLow-level D3D12 wrapper for Rust.11,864MIT
piet-glowA hardware-accelerated 2D graphics backend for piet using glow11,741LGPL-3.0-or-later OR MPL-2.0
freya-skia-bindingsSkia Bindings for Rust11,138MIT
freya-skia-safeSafe Skia Bindings for Rust11,066MIT
bort-vklightweight vulkan wrapper10,675MIT/Apache-2.0
include-merkleFunctionality for generating a Merkle-tree of a given text file with include references, replacing includes paths with a…10,450MIT/Apache-2.0
vulkaniteVulkan bindings for Rust10,101MIT OR Apache-2.0
bargA GUI toolkit & 3D graphics renderer.9,996MIT / BSL-1.0
after-effects-sysAuto-generated After Effects® bindings9,362Apache-2.0 OR BSD-3-Clause OR MIT OR Zlib
drawing_glOpenGL backend for 2D graphics library8,910MIT OR Apache-2.0
thindxThin DirectX wrappers8,763Apache-2.0 OR MIT
nsi-coreNodal Scene Interface for (offline) 3D renderers – ɴsɪ.8,627MIT OR Apache-2.0 OR Zlib
piet-tiny-skiaA two-dimensional vector graphics implementation atop tiny-skia8,599LGPL-3.0-or-later OR MPL-2.0
daliA rendering library for fast digital painting8,451Apache-2.0
jay-ashVulkan bindings for Rust7,750MIT OR Apache-2.0
bort-vmaRust ffi bindings and idiomatic wrapper for AMD Vulkan Memory Allocator (VMA)7,577MIT/Apache-2.0
luminance-glowMulti-GL backend for luminance using Glow7,546BSD-3-Clause
vmaRust ffi bindings and idiomatic wrapper for AMD Vulkan Memory Allocator (VMA)7,173MIT/Apache-2.0
deft-skia-safeSafe Skia Bindings for Rust7,012MIT
gtk4_gliumUse Gtk4 and Glium together6,848MIT
luminance-surfmanA Surfman platform crate for the Luminance graphics API6,840non-standard
deft-skia-bindingsSkia Bindings for Rust6,773MIT
dl-openvdb-querySafe Rust wrapper for 3Delight’s OpenVDB metadata query API.6,596Apache-2.0 OR BSD-3-Clause OR MIT OR Zlib
redirectA light weight, type safe wrapper around the DirectX12 API6,505Apache-2.0
wgpu-appRust wgpu partial fork for management Vertex Texture CameraAngle6,413MIT
gl32Generated OpenGL bindings for version 3.2 core.6,387Apache-2.0
oxygen_emissionOxygen Emission is a rendering engine mainly developed for the Oxygen Game Engine.6,360MIT
koboA library for interacting with Kobo devices6,218GPL-3.0
vk-mem-3-eruptRust ffi bindings and idiomatic wrapper for AMD Vulkan Memory Allocator (VMA) using erupt.6,078MIT/Apache-2.0
nsi-3delightNodal Scene Interface (ɴsɪ) helpers for the 3Delight renderer.5,984MIT OR Apache-2.0 OR Zlib
vulkano-glfw-v2Utility functions to use GFLW with Vulkano5,829MIT
min_glMinimal boilerplate code for OpenGL applications with glfw and glad.5,584MIT OR Apache-2.0
sky_renderer[DEPRECATED: use wilhelm_renderer instead] A minimalist 2D data rendering engine5,533MIT
imgui-openglAn OpenGL renderer for imgui-rs5,446MIT/Apache-2.0
vulkanicUltra-thin Vulkan API wrapper sitting on top of vk-sys5,223MIT
moltenvk-sysCrate to build MoltenVK dylib5,106MIT OR Apache-2.0
muglMinimalistic Low-level WebGL 2.0 / WebGPU 3D graphics abstraction layer for Rust and WebAssembly4,994MIT
nobs-vkmemvulkan memory management extension for nobs-vk4,808MIT
after-effectsHigh level bindings for the Adobe After Effects® SDK4,758Apache-2.0 OR BSD-3-Clause OR MIT OR Zlib
wgpu-app-sampleRust sample for wgpu-app management Vertex Texture CameraAngle4,748MIT
nsi-toolbeltNodal Scene Interface for (offline) 3D renderers – ɴsɪ.4,735MIT OR Apache-2.0 OR Zlib
canvas2D Canvas API that streams all drawing commands to a connected browser.4,735Apache-2.0
sciter-serdeSerde support for Sciter engine.4,710MIT
opensubdiv-petite-sysLow-level wrapper around parts of Pixar’s OpenSubdiv4,614Apache-2.0
voodoo_winitVoodoo - Winit glue4,555MIT/Apache-2.0
azul_glium[Fork of tomaka/glium due to inactivity]
Elegant and safe OpenGL wrapper.
Glium is an intermediate layer between OpenGL and…4,503Apache-2.0
wiener_utilsCrate that contains the utilities for Wiener and the user4,384MIT
premiere-sysAuto-generated Adobe Premiere® bindings4,375Apache-2.0 OR BSD-3-Clause OR MIT OR Zlib
wiener_coreCrate that contains the core functionality for Wiener4,290MIT
vk-mem-allocA very lightweight wrapper around the Vulkan Memory Allocator4,289MIT/Apache-2.0
delight-buildBuild-time helpers for 3Delight-related crates4,161MIT OR Apache-2.0 OR Zlib
iron-oxideUnsafe Rusty Metal.4,010MIT
nobs-vkpipes-macrocodegeneration macros for nobs-vkpipes3,939MIT
wiener_glCrate that contains the OpenGL code for Wiener3,774MIT
fframes-skia-safeSafe Skia Bindings for Rust3,625MIT
wrgpgpuWren's library for GPGPU compute shaders, based on WGPU3,548ISC
rug2dOpenGL-backed library for creating GUIs and other 2d graphical applications3,382Apache-2.0
nobs-vkpipesshader compilation, vulkan pipeline composition and descriptor set updating as extension to nobs-vk3,346MIT
tglBindings to TinyGL, a Small, Free and Fast Subset of OpenGL3,256MIT OR Apache-2.0
nsi-jupyterJypyter notebooks support for ɴsɪ.3,253MIT OR Apache-2.0 OR Zlib
ashtrayUse Vulkan ash API more easily3,250Unlicense OR CC0-1.0
wiener_internalInternal crate for Wiener3,219MIT
opensubdiv-petiteWrapper around parts of Pixar’s OpenSubdiv3,212Apache-2.0
xege-ffiFFI bindings for xege library.3,194MIT
spritecThe sprite compiler - generates 2D pixel art from 3D models3,159MPL-2.0
fframes-skia-bindingsSkia Bindings for Rust3,135MIT
vk-mem-eruptRust ffi bindings and idiomatic wrapper for AMD Vulkan Memory Allocator (VMA) using erupt.3,022MIT/Apache-2.0
piplLibrary for building Adobe's PiPL plugin info resource3,008MIT OR Apache-2.0
mtl-rsRust bindings for Apple's Metal API2,989MIT
vulkano-taskgraphVulkano's task graph implementation2,931MIT OR Apache-2.0
wienerRendering API for OpenGL and Vulkan2,908MIT
gl11OpenGL 1.1 bindings, based on gl-rs2,824Apache-2.0
nobs-vulkanism-headlessvulkan for offscreen rendering and compute2,726MIT
wiener_vkCrate that contains the Vulkan code for Wiener2,705MIT
vk-mem-alloc-sysA very lightweight wrapper around the Vulkan Memory Allocator2,506MIT/Apache-2.0
xegeRust style safe warpper of C++ graphics libraries.2,505MIT
xglUnified minimalist OpenGL 3.3 & WebGL abstractions.2,445Apache-2.0 OR MIT
alloy_grapheneA pure-rust abstraction over the various graphics libraries2,441BSD-3-Clause
pyronyxBetter Vulkan bindings for Rust2,205MIT
glium-spearman[Fork without default glutin features]
Elegant and safe OpenGL wrapper.
Glium is an intermediate layer between OpenGL and your…2,191Apache-2.0
premiereHigh level bindings for the Adobe Premiere® SDK2,164Apache-2.0 OR BSD-3-Clause OR MIT OR Zlib
ash-bootstrapA utility library that jump starts initialization of Vulkan via Ash1,974MIT OR Apache-2.0