30 open-source projects similar to gpuweb/gpuweb, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Gpuweb alternative.
This project is a cross-platform graphics and compute framework that provides a unified, hardware-agnostic abstraction layer for rendering and parallel processing. It enables developers to build high-performance applications that execute consistently across diverse operating systems and hardware backends, including Vulkan, Metal, and DirectX. By mapping high-level graphics commands to native APIs, it serves as a portable foundation for both real-time 3D rendering and general-purpose GPU computing. The framework distinguishes itself through a robust architecture that supports both native deskt
gpu.cpp is a lightweight C++ library for executing low-level general-purpose GPU computation across different hardware vendors and operating systems. It functions as a portable GPU wrapper, kernel orchestrator, and tensor management system using the WebGPU specification to abstract device initialization, buffer transfers, and compute shader dispatching. The library provides a framework for defining compute kernels from shader code and managing their asynchronous dispatch and synchronization. It enables the execution of cross-platform compute shaders and the orchestration of GPU tasks through
TypeGPU is a tool for type-safe WebGPU development that enables writing shaders in TypeScript. It translates high-level TypeScript function definitions and structures into WebGPU Shading Language source code to automate shader generation and validate logic using a type system. The project provides a mechanism for cross-library GPU interoperability by sharing typed buffers without copying data to system memory. It also integrates the Model Context Protocol to allow AI agents to inspect generated shader code and diagnose runtime errors. The system manages WebGPU resource mapping through typed
Orillusion is a WebGPU 3D rendering engine designed for high-fidelity scenes and visual effects in the browser. It functions as a GPU compute framework for parallel mathematical operations and a physically-based rendering graphics pipeline for realistic materials and surfaces. The system also includes a web-based 3D animation toolkit for driving skeletal animations and interpolating vertex positions. The engine is distinguished by its use of an entity component system for scene logic and a macro-based shader generation system that creates multiple shader variants. It optimizes performance thr
The Forge is a low-level toolkit for building high-performance graphics engines and applications across desktop, mobile, and console platforms. It provides a cross-platform engine framework and a dedicated shader compiler that translates a single source into target-specific languages for various graphics APIs and hardware. The project includes a GPU memory and resource manager that utilizes unified root signatures for resource binding, alongside a ray tracing rendering pipeline that implements hardware-accelerated ray and path tracing queries. State management is handled through a high-perfor
This repository is a collection of reference implementations and programming examples for the CUDA Toolkit. It serves as a GPGPU implementation guide and a parallel computing reference, providing code for using graphics hardware to perform general-purpose calculations and high-performance parallel processing. The project provides specific samples for GPU kernel development and resource management. These include demonstrations of multi-GPU communication, peer-to-peer memory access, and system hardware inspection to coordinate distributed GPU resources. The codebase covers a wide range of capa
TileLang is a Python-embedded domain-specific language compiler that JIT-compiles and autotunes GPU kernels. It uses a tile-based DSL, automatic software pipelining, and parallel autotuning to generate optimized GPU kernels at runtime. It supports tensor core operations with Pythonic syntax, automatic memory management, and thread mapping. The compiler searches over tile sizes, thread counts, and scheduling policies, compiling and benchmarking candidates in parallel to find the fastest kernel. It also caches compiled binaries and tuning results to disk for reuse across sessions. TileLang inc
ScottPlot is a cross-platform, high-performance charting library for .NET that renders interactive plots across desktop and web GUI frameworks including Windows Forms, WPF, MAUI, Avalonia, Blazor, and WinUI. It provides an optimized rendering engine capable of displaying millions of data points with interactive pan, zoom, and live data streaming, while also supporting image export to formats like PNG and SVG for file output, cloud applications, and notebooks. The library distinguishes itself through a comprehensive set of chart types including scatter, line, bar, pie, heatmap, financial, rada
gfx is a hardware-agnostic graphics API abstraction that translates a unified set of graphics and compute commands into native instructions for multiple GPU drivers. It provides a common interface for cross-platform rendering and general-purpose GPU compute programming. The project features an intermediate-representation shader translation system that converts source code and SPIR-V into target-specific languages. It employs a data-driven reference test framework to verify that graphics output remains consistent across different hardware platforms. Capabilities include parallel command buffe
RmlUi is a cross-platform UI renderer and middleware library that enables the creation of user interfaces using a subset of HTML and CSS. It functions as a rendering-agnostic layer designed to integrate web-standard layout and styling into custom game engines and embedded applications. The framework is distinguished by its integration of Lua for dynamic logic and control, as well as a specialized toolkit for rendering SVG images and Lottie animations. It utilizes a pluggable rendering backend that decouples geometry generation from the final display, allowing it to generate textured geometry
Nannou is a creative coding framework for Rust designed for building interactive visual and audio sketches. It provides a loop-based API with hardware-accelerated 2D and 3D rendering, serving as a toolkit for generative art production and multimedia installation design. The framework is distinguished by its comprehensive hardware communication interface, which bridges software with physical devices via MIDI, OSC, DMX, serial, and laser DAC protocols. It also includes specialized projection mapping tools for warping visual output to fit non-standard physical surfaces and a dedicated GPU shader
The Book of Shaders is an interactive educational guide and curriculum for learning GLSL fragment shader programming to create procedural graphics and visual effects. It provides a structured learning path and a categorized reference guide for data types, built-in functions, and mathematical operations used in shader development. The project features a web-based shader sandbox and interactive editor that allows for real-time iteration and visualization of GLSL code. Users can experiment with procedural art and share their results via unique URLs. The curriculum covers a wide range of graphic
Evolve is an evolution-based organism designer and GPU-accelerated artificial life simulator that combines interactive particle physics with a real-time simulation editor. At its core, it runs genetic algorithm evolution on self-replicating graph structures to evolve digital organisms, offloading particle physics, neural networks, and rendering entirely to the GPU through a compute shader pipeline for real-time performance. The project distinguishes itself with graph-based organism design that uses a directed graph editor to visually define organism structure, connections, and neural controll
SHADERed is a cross-platform shader development environment and debugger used for authoring vertex, pixel, and compute shaders. It functions as an integrated editor for writing and compiling shader code while providing live visual previews and the ability to configure render pipeline states. The tool features a GLSL shader debugger that enables line-by-line execution with breakpoints and variable watches to resolve visual logic errors. It includes a shader asset manager for importing 3D models and textures as data inputs and supports an extensible plugin system to integrate new languages and
Splat is a browser-based 3D Gaussian splatting viewer that renders photorealistic scenes from photographs directly in a web browser. It uses WebGL 2.0 compute shaders to perform per-splat sorting and alpha blending on the GPU, enabling real-time display of millions of semi-transparent ellipsoids. The application also functions as a drag-and-drop converter that transforms .ply files from 3D Gaussian splatting software into the optimized .splat format for web rendering. The viewer provides full camera navigation through keyboard, mouse, and touch gestures, and includes a camera view manager tha
This project is a collection of reference implementations and technical guides for building high-performance 3D applications and graphics experiments on Windows. It provides a library of samples covering the implementation of GPU compute frameworks, raytracing reference models, and shader optimization techniques. The repository includes specific demonstrations for modeling physical light behavior to create reflections and lighting effects, as well as tools for analyzing memory dumps and tracking real-time execution metrics on graphics hardware. It further provides guidance on managing shader
Vello is a cross-platform graphics library and GPU-accelerated 2D vector renderer. It functions as an engine for drawing high-performance 2D scenes, rendering scalable vector graphics files, and playing Lottie animations. The project utilizes GPU compute shaders for rasterization and stores vector geometry in a GPU-resident scene graph to minimize data transfer. It employs a tiled rendering architecture and parallelized path rendering to process complex imagery across diverse graphics APIs. The library provides hardware-accelerated compositing and enables the output of rendered 2D visual dat
This project is a high-level 3D graphics engine designed to render complex, hardware-accelerated environments within web browsers. It provides a comprehensive abstraction layer that manages scene graphs, cameras, and lighting, mapping high-level scene definitions onto low-level graphics APIs. By decoupling these definitions from specific hardware targets, the engine ensures consistent performance across diverse browsers and devices. The framework distinguishes itself through a robust architecture that includes a unified math library for high-frequency spatial calculations and a physically bas
Chart.js is a declarative data visualization framework that renders interactive, responsive charts directly onto an HTML5 canvas element. It functions as a configuration-driven engine, transforming structured datasets into complex graphical representations by merging user-defined settings with global defaults. The library utilizes a high-performance rendering pipeline that executes drawing commands during each animation frame to maintain smooth visual feedback. The project distinguishes itself through a modular, extensible architecture that allows developers to register custom scales, control
Vulkan-Hpp is a header-only C++ binding library for the Vulkan graphics and compute API. It provides a type-safe wrapper around the Vulkan C API, allowing developers to interface with GPU hardware through a C++ interface that introduces no runtime CPU overhead. The library utilizes Resource Acquisition Is Initialization patterns to manage the lifecycle of Vulkan handles and objects, automating the release of GPU resources. It replaces C-style enumerations and bit-fields with strong typing and static type checking to catch invalid API parameter assignments during compilation. The project cove
regl is a declarative WebGL library that manages graphics state and GPU resources through functional commands instead of manual binding and state tracking. It provides a command-based drawing abstraction where shaders, attributes, and render state are encapsulated into reusable, compiled functions that can be executed efficiently. What sets regl apart is its scoped state inheritance system, which allows nested drawing commands to inherit and override render state from parent scopes for organized rendering. The library automatically recovers from GPU context loss by restoring buffer and textur
rust-cuda is a GPU programming framework and device compiler that allows for the development and execution of high-performance kernels on NVIDIA hardware using Rust. It provides a driver wrapper to manage device memory allocation and kernel launching, effectively serving as a system for writing GPU compute logic without relying on C++. The project includes a compute library with hardware-optimized primitives for neural network acceleration and hardware-accelerated raytracing. It utilizes a compilation toolchain that translates source code into a low-level intermediate representation for execu
LWJGL is a cross-platform library that provides Java bindings to native APIs for graphics, audio, compute, windowing, and input. It enables Java applications to access low-level hardware-accelerated capabilities such as OpenGL and Vulkan rendering, OpenAL 3D audio, OpenCL GPU compute, and GLFW windowing and input handling. Under the hood, LWJGL dynamically resolves native function pointers at runtime, loads platform-specific shared libraries, and uses generated JNI bindings to bridge Java and native code. It offers explicit memory management through direct buffer access and stack-allocated me
This project is a technical educational guide focused on browser architecture and the internal processes used to render web pages. It provides a detailed breakdown of the web request lifecycle, from the initial networking phase to the final visual output on a screen. The guide covers specific technical sequences including the DNS resolution process across browser, operating system, and ISP caches, and the establishment of secure connections through the TLS handshake. It also details the communication flow between clients and servers using the HTTP protocol and server-side request handling. T
Triton is a parallel computing framework and high-level programming language designed for writing custom compute kernels. It functions as a deep learning compiler, translating complex mathematical operations into high-throughput instructions that maximize hardware utilization and memory efficiency on graphics processing units. The framework distinguishes itself through a hardware-agnostic compute abstraction that allows developers to define kernels without manual low-level tuning. It employs just-in-time compilation to generate optimized binary instructions at runtime, utilizing static data f
DXVK is a graphics compatibility layer that enables Windows-based applications to run on non-Windows operating systems by translating legacy Direct3D instructions into the modern Vulkan API. It functions as a translation library that maps high-level rendering commands to low-level hardware-accelerated primitives, allowing for high-fidelity graphics output across different hardware environments. The project distinguishes itself through a suite of performance optimization strategies designed to maintain frame consistency and reduce latency. By utilizing background shader compilation and multith
ArrayFire is a hardware-agnostic compute framework and JIT-compiled tensor engine designed for high-performance numerical computing. It serves as a GPU numerical computing library and parallel signal processing toolkit that abstracts hardware backends, allowing the same codebase to execute across various GPU architectures and CPUs. The project distinguishes itself through a JIT engine that uses expression compilation to fuse operations and minimize memory overhead. It employs a deferred execution graph to optimize computation chains and provides interoperability primitives to share data and e
gg is a Go 2D graphics library and vector graphics engine designed for programmatic image generation. It provides a canvas rendering API to create custom 2D shapes, paths, and visual assets, which can be exported as PNG and JPG files. The toolkit enables the construction of complex geometry using Bezier curves and custom paths. It supports a variety of rendering operations, including filling and stroking paths, applying linear and radial gradients, and utilizing surface patterns. The library covers a broad range of capabilities, including text rendering with word wrapping and dimension measu
PixiJS is a high-performance 2D rendering engine designed for building interactive visual content and browser-based games. It provides a hardware-accelerated graphics library that leverages WebGL and WebGPU backends to execute complex scenes, utilizing a hierarchical scene graph to manage object transformations and display order. The project distinguishes itself through a sophisticated architecture that decouples rendering logic from hardware APIs, allowing for consistent performance across diverse browser environments. It features a robust, asynchronous asset pipeline that handles loading, c
Stable Diffusion WebUI Forge is a web-based interface and inference engine designed for the generation of AI media. It functions as a platform for executing diffusion-based models, providing a centralized environment to manage image preprocessors, custom generation logic, and hardware-accelerated sampling. The project distinguishes itself through a neural network patching framework that allows for the modification of model layers and the application of spatial conditioning during inference. By injecting custom logic and adapters directly into the network, users can influence output behaviors