Open-source graphics software
2100 open-source libraries, tools and applications tagged graphics, ranked by how closely graphics is their primary purpose, then by adoption and maintenance health. Each entry links to a page with sources, use cases and when to choose or avoid it.
2100 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| hexops/mach Mach is a Zig game engine and graphics toolkit for building high-performance, cross-platform games, visualizations, and desktop/mobile GUI … | 66 | 4850 | experimental |
| cslarsen/jp2a jp2a is a command-line utility that converts JPEG images into ASCII art. It renders pictures as text characters suitable for terminals or p… | 32 | 1081 | maintenance |
| eliasts/Ocean_Community_Next_Gen A community-driven ocean shader and water simulation package for Unity, featuring wave rendering, buoyancy, and boat physics with multiple … | 32 | 1076 | maintenance |
| DirectVoxGO DirectVoxGO (DVGO) is a PyTorch implementation of Direct Voxel Grid Optimization for fast neural radiance field (NeRF) reconstruction, repl… | 32 | 1075 | maintenance |
| PavelDoGreat/Super-Blur A Unity library providing screen and UI gaussian blur effects via camera post-processing scripts and shaders. It offers two implementations… | 32 | 1073 | maintenance |
| unity3d-jp/FrameCapturer A Unity plugin (C++ native code) that captures framebuffers, G-buffers, and audio from Unity and exports them to image, video, or audio fil… | 23 | 1071 | maintenance |
| LeiQiaoZhi/Easy-Text-Effects-for-Unity An open-source Unity package for animating TextMeshPro text with customizable effects such as per-vertex animations. It offers ScriptableOb… | 50 | 1070 | maintenance |
| spritesmith A gulp plugin that converts a set of images into a spritesheet image and CSS variables (SASS, Stylus, LESS, JSON, CSS) for use in styleshee… | 32 | 1066 | maintenance |
| harjot-oberai/Long-Shadows An Android library for efficiently generating and rendering long shadows for any type of view, including custom views. Heavy calculations a… | 32 | 1066 | maintenance |
| chengkehan/GPUSkinning A Unity library that replaces Unity's built-in CPU bone animation with custom GPU skinning, storing bone matrices in textures or compute bu… | 23 | 1065 | maintenance |
| alexjlockwood/kyrie Kyrie is a Kotlin library that provides a superset of Android's VectorDrawable and AnimatedVectorDrawable, supporting pause/resume/seek, ru… | 10 | 1065 | maintenance |
| tony-pizza/Stereogram.js A JavaScript library for generating autostereogram images (SIRDS, popularized as Magic Eye) in the browser using HTML5 Canvas. It renders s… | 32 | 1064 | maintenance |
| galnetwen/Live2D A packaged Live2D widget for embedding an animated anime-style mascot ('kanban musume') character on blog or website pages, based on a tuto… | 32 | 1064 | maintenance |
| simonfuhrmann/mve MVE (The Multi-View Environment) is a C++ library and toolset implementing a complete end-to-end pipeline for image-based 3D geometry recon… | 67 | 1061 | maintenance |
| Glyphr Studio Glyphr Studio v1 is a free, web-based font editor aimed at hobbyists and typeface design beginners, offering vector glyph editing, kerning,… | 10 | 1061 | maintenance |
| gorhill/Javascript-Voronoi A standalone JavaScript library implementing Steven Fortune's algorithm to efficiently compute Voronoi diagrams from a set of sites within … | 10 | 1059 | maintenance |
| BerndK/SvgToXaml A hybrid WPF/console tool for viewing SVG files and converting them to XAML resources for .NET applications. It supports interactive browsi… | 23 | 1058 | maintenance |
| zadvorsky/three.bas THREE.BAS is a JavaScript extension for THREE.js that adds GPU-based animation via vertex shaders, storing animation state in geometry attr… | 23 | 1056 | maintenance |
| cdglabs/apparatus Apparatus is a hybrid graphics editor and programming environment for creating interactive diagrams, running entirely in the browser. It le… | 23 | 1054 | maintenance |
| cats-oss/Sica Sica is a Swift library providing a simple, type-safe interface over Apple's Core Animation framework. It lets developers run animations se… | 23 | 1046 | maintenance |
| Talking Head Anime from a Single Image Demo programs for the Talking Head(?) Anime 3 project, which animates an anime character from a single image using machine learning. It inc… | 32 | 1045 | maintenance |
| CalciferZh/minimal-hand A Python library for real-time 3D hand motion capture from a single RGB camera, running at over 100fps. It combines a deep network (DetNet)… | 23 | 1043 | maintenance |
| AdultLink/RadialProgressBar A customizable radial progress bar shader for Unity3D that renders circular fill indicators with configurable arc range, colors, textures, … | 23 | 1042 | maintenance |
| draeton/stitches Stitches is an HTML5 sprite sheet generator that combines multiple images into a single sprite sheet with CSS coordinates using a browser-b… | 32 | 1041 | maintenance |
| SebLague/Hydraulic-Erosion A Unity project that simulates hydraulic erosion on heightmap terrains to make procedurally generated landscapes look more natural. It incl… | 32 | 1041 | maintenance |
| stathissideris/ditaa ditaa is a small Java command-line utility that converts diagrams drawn using ASCII art characters (like | / -) into proper bitmap graphics… | 23 | 1041 | maintenance |
| ajweeks/FlexEngine Flex Engine is a personal cross-platform game engine written in C++ with a Vulkan rendering backend, built as a playground for learning rea… | 66 | 1040 | maintenance |
| pixray/pixray Pixray is a Python library and command-line utility for text-to-image generation, combining CLIP-guided GAN imagery, pixel-art drawers, and… | 23 | 1040 | maintenance |
| yashbhalgat/HashNeRF-pytorch A pure PyTorch implementation of NVIDIA's Instant-NGP multi-resolution hash encoding for training NeRFs, built on top of NeRF-pytorch. It e… | 32 | 1036 | maintenance |
| facebook/transform360 Transform360 is a C++ video/image filter that converts 360-degree video between projections, typically from equirectangular to cubemap form… | 65 | 1035 | maintenance |
| tsulej/GenerateMe A collection of Processing (Java-based) scripts for creating generative glitch art, image distortion, and design effects. It includes dozen… | 32 | 1030 | maintenance |
| toineheuvelmans/Metron Metron is a Swift library that extends CoreGraphics 2D geometric primitives with a comprehensive collection of geometric functions and type… | 23 | 1030 | maintenance |
| antwankakki/FabricView FabricView is an Android canvas drawing library inspired by Fabric.js, supporting hand/stylus drawing, text, and images. It lets developers… | 23 | 1029 | maintenance |
| keijiro/KinoBloom KinoBloom is a bloom/veiling glare image effect for Unity implemented as a shader-based post-processing effect. It offers configurable thre… | 23 | 1025 | maintenance |
| skywinder/GaugeKit GaugeKit is a Swift library for building custom gauges in iOS apps, including easy reproduction of Apple's style ring gauges. It supports I… | 32 | 1022 | maintenance |
| yiliansource/party-js party.js is a JavaScript/TypeScript library that adds customizable particle effects like confetti and sparkles to web pages. It ships with … | 66 | 1021 | maintenance |
| iddan/react-native-canvas A React Native component that provides an HTML5-like Canvas API for drawing 2D graphics in mobile apps, implemented via a WebView bridge. I… | 32 | 1017 | maintenance |
| torrinworx/Blend_My_NFTs Blend_My_NFTs is a free, open-source Blender add-on that automatically generates thousands of 3D models, images, and animations from user-d… | 23 | 1017 | maintenance |
| FaceTracker ofxFaceTracker is an openFrameworks addon for real-time non-rigid face tracking, based on Jason Saragih's FaceTracker C++ library and OpenC… | 10 | 1014 | maintenance |
| tobspr/RenderPipeline A deferred rendering pipeline with physically based shading for the Panda3D game engine, written in Python and GLSL. It provides advanced p… | 61 | 1013 | maintenance |
| fylz1125/ShaderDemos A collection of custom GLSL shaders and a shader framework for Cocos Creator 2.x, with prebuilt visual effects that can be attached to node… | 32 | 1012 | maintenance |
| snap-research/NeROIC Official PyTorch implementation of NeROIC, a neural method for capturing 3D object geometry and material from online image collections and … | 32 | 1012 | maintenance |
| shrhdk/text-to-svg A JavaScript library that converts text into SVG path data using font files, with no native dependencies. It works in both Node.js and brow… | 32 | 1010 | maintenance |
| jwilling/JNWSpringAnimation An Objective-C library that subclasses CAKeyframeAnimation to provide spring physics (damped harmonic) animations for Core Animation layers… | 32 | 1008 | maintenance |
| Exokit Exokit is a native VR/AR/XR engine for JavaScript that emulates a web browser on top of Node, providing native hooks for WebGL, WebXR, WebA… | 23 | 1007 | maintenance |
| linebender/vello Vello is a GPU compute-centric 2D vector graphics rendering engine written in Rust, built on wgpu. It renders large 2D scenes (shapes, grad… | 95 | 4423 | experimental |
| mitallast/diablo-js An isometric minimal-code style game rendered on HTML5 canvas with JavaScript, recreating a level from Diablo 2. It includes tools for extr… | 32 | 1005 | maintenance |
| NASAWorldWind/WebWorldWind NASA's Web WorldWind is a JavaScript SDK providing a 3D virtual globe engine for the web, built on WebGL. It renders high-resolution terrai… | 38 | 1003 | maintenance |
| mmp/pbrt-v2 pbrt-v2 is the C++ source code for the physically based rendering system described in the second edition of 'Physically Based Rendering: Fr… | 32 | 1001 | maintenance |
| miickel/flutter_particle_clock A prize-winning analog clock face app built with Flutter, featuring a particle system with randomized color palettes and real-time luminanc… | 32 | 998 | maintenance |
| megai2/d912pxy A DirectX 9 to DirectX 12 API translation proxy library designed specifically for Guild Wars 2, allowing the game to use DX12 without code … | 10 | 997 | maintenance |
| GitHub Blocks Monaspace is a superfamily of five interchangeable monospaced typefaces, offered in static, variable, Nerd Font‑patched, and frozen formats… | 10 | 345 | active |
| Ant Engine Ant is an open-source game engine developed by Lingxi Huyu (Alibaba), written primarily in Lua with C/C++ core libraries. It includes an ed… | 43 | 3931 | experimental |
| hlorus/CAD_Sketcher CAD Sketcher is a constraint-based sketcher extension for Blender that lets users create precise 2D shapes using geometric constraints like… | 98 | 3449 | experimental |
| Rust-GPU/rust-gpu A Rust compiler backend that emits SPIR-V, making Rust a first-class language for writing GPU shaders targeting Vulkan. It lets developers … | 80 | 3376 | experimental |
| HailToDodongo/pyrite64 Pyrite64 is a visual editor and runtime game engine for creating 3D games that run on real Nintendo 64 consoles or accurate emulators, buil… | 84 | 3268 | experimental |
| livinamuk/Hell2025 Hell Engine is a custom C++ game engine built to power a splitscreen roguelike/deathmatch survival horror game. It features real-time raytr… | 73 | 2870 | experimental |
| MewPurPur/GodSVG GodSVG is a free, open-source structured SVG editor built with Godot that represents SVG code directly and lets users edit vector graphics … | 83 | 2782 | experimental |
| Hydra Hydra is a browser-based livecoding environment for generating and mixing networked realtime visuals, inspired by analog modular synthesize… | 64 | 2731 | experimental |
| google/forma Forma is an experimental, thoroughly parallelized vector-graphics renderer written in Rust with both CPU (SIMD + Rayon) and GPU (wgpu/WebGP… | 10 | 2640 | experimental |
| tsoding/olive.c Olive.c is a dependency-free, stb-style single-header 2D graphics library for C that renders pixel by pixel into a memory buffer. It provid… | 48 | 2459 | experimental |
| idflood/ThreeNodes.js ThreeNodes.js is a browser-based node-based visual programming environment inspired by vvvv, built with JavaScript, HTML, and WebGL (three.… | 32 | 2346 | experimental |
| windowjs/windowjs Window.js is an open-source JavaScript runtime for desktop 2D graphics programming, built on the V8 engine, GLFW, and Skia. It exposes fami… | 23 | 2258 | experimental |
| lllyasviel/LayerDiffuse LayerDiffuse is a research project that generates transparent images and image layers using diffusion models with latent transparency. It p… | 26 | 2223 | experimental |
| aagentah/nw_wrld nw_wrld is an event-driven sequencer application for triggering visuals built with web technologies, packaged as an Electron desktop app. U… | 71 | 2159 | experimental |
| QwenLM/Qwen-Image-Layered Qwen-Image-Layered is a diffusion-based model and pipeline that decomposes an input image into multiple independently editable RGBA layers.… | 39 | 2117 | experimental |
| Unity-Technologies/AutoLOD AutoLOD is a Unity framework that automatically generates levels of detail (LOD) for 3D model assets on import and optimizes whole scenes v… | 23 | 2060 | experimental |
| EQMG/Acid Acid is an open-source, cross-platform 3D game engine written in modern C++17, using Vulkan as its sole graphics API (with Metal support vi… | 32 | 2027 | experimental |
| PiLiDAR PiLiDAR is a DIY 360° 3D panorama scanner built on Raspberry Pi that combines a low-cost LDRobot LiDAR (LD06/LD19/STL27L) with a Pi HQ came… | 56 | 1977 | experimental |
| protongraph/protongraph ProtonGraph is a standalone, node-based desktop application for procedural 3D content generation, built as a Godot engine project. Users ch… | 23 | 1737 | experimental |
| hugoam/toy toy is a thin and modular C++ game engine built on top of the 'two' library, aiming to provide the simplest technology stack for making 2D … | 32 | 1594 | experimental |
| MapLibre maplibre-rs is a portable vector map renderer written in Rust that uses WebGPU for cross-platform rendering on web, mobile, and desktop. It… | 77 | 1584 | experimental |
| eval-exec/neomacs Neomacs is a work-in-progress rewrite of GNU Emacs in Rust with a GPU-accelerated display engine (wgpu), aiming for 100% Emacs/Elisp compat… | 82 | 1581 | experimental |
| wilsonzlin/fastrender FastRender is an experimental browser rendering engine written in Rust that parses HTML/CSS, computes styles, performs layout (block, inlin… | 41 | 1570 | experimental |
| travisvroman/kohi Kohi is a 3D game engine written in C using Vulkan, built from scratch as part of an ongoing YouTube/Twitch educational series. It is expli… | 77 | 1519 | experimental |
| fizzyedit/fizzy Fizzy is a cross-platform, open-source modular editor written in Zig that starts as an empty shell and loads compiled plugins to provide fu… | 96 | 1499 | experimental |
| tsoding/musializer Musializer is a desktop music visualizer written in C that renders real-time visualizations of audio files and can export them as high-qual… | 70 | 1475 | experimental |
| graphdeco-inria/hierarchical-3d-gaussians Official implementation of the SIGGRAPH 2024 paper 'A Hierarchical 3D Gaussian Representation for Real-Time Rendering of Very Large Dataset… | 32 | 1471 | experimental |
| PorkStudios/FarPlaneTwo A Minecraft Forge mod that adds a Level-of-Detail (LoD) terrain renderer, enabling render distances of hundreds of thousands to millions of… | 50 | 1446 | experimental |
| pixel-point/aval AVAL is an open-source format and runtime for interactive, prerendered video on the web, bundling multiple codec renditions (AV1, VP9, H.26… | 53 | 1396 | experimental |
| Tencent-Hunyuan/Hunyuan3D-WorldClaw WorldClaw is a research framework from Tencent Hunyuan for agentic, large-scale 3D open-world generation, released alongside an arXiv paper… | 53 | 1334 | experimental |
| tgfrerer/island Project Island is an experimental Vulkan renderer and engine framework for Linux and Windows, written in C/C++, designed for rapid prototyp… | 67 | 1289 | experimental |
| paradigms-of-intelligence/swissgl SwissGL is a minimalistic JavaScript wrapper around the WebGL2 API that reduces boilerplate for managing GLSL shaders, textures, and frameb… | 60 | 1241 | experimental |
| sghall/react-vertex React Vertex is a hooks-based WebGL library for React that lets you build 3D scenes declaratively using React components and hooks. It prov… | 23 | 1234 | experimental |
| godotengine/godot-blender-exporter A Blender add-on that exports Blender scenes directly to Godot Engine's native scene format (.escn). It is experimental and the README reco… | 32 | 1232 | experimental |
| inexorgame/vulkan-renderer Inexor is an open-source, render-graph based 3D game engine built with C++20 and Vulkan API 1.3, targeting Linux and Windows. It is in earl… | 86 | 1228 | experimental |
| TheCherno/Sparky Sparky is a cross-platform, high-performance 2D/3D game engine written in C++ by TheCherno. It is an early-stage project primarily develope… | 23 | 1192 | experimental |
| svg-shaders A copy-paste JavaScript snippet implementing an Apple-style Liquid Glass visual effect using SVG filters. It can be pasted into any website… | 48 | 1188 | experimental |
| baku89/glisp Glisp is a Lisp-based design tool that combines a graphical editor with a Lisp interpreter, letting artists mix direct manipulation with co… | 65 | 1182 | experimental |
| mrdoob/frame.js frame.js is a JavaScript sequence editor for creating timed animations and interactive scenes in the browser, commonly used for demoscene-s… | 48 | 1172 | experimental |
| ecsyjs/ecsy ECSY is a lightweight, framework-agnostic Entity Component System (ECS) framework for JavaScript, originally developed by the Mozilla Mixed… | 10 | 1154 | experimental |
| Radiance Radiance is a Minecraft mod that replaces the vanilla OpenGL renderer with a custom Vulkan C++ renderer supporting hardware-accelerated ray… | 78 | 1146 | experimental |
| StrandedKitty/streets-gl Streets GL is a real-time 3D map renderer that visualizes OpenStreetMap data in the browser using WebGL2. It generates geometry on the fly … | 45 | 1096 | experimental |
| react-native-skia/react-native-skia A React Native renderer based on Google's Skia graphics engine, enabling cross-platform 2D drawing and graphics rendering in mobile apps. T… | 23 | 1091 | experimental |
| spite/Wagner Wagner is an effects composer library for three.js that enables chained post-processing shader passes on WebGL scenes. It provides a collec… | 32 | 1086 | experimental |
| traverseda/pycraft A community fork of fogleman's 'Minecraft in 500 lines of Python', intended to evolve into a real voxel game engine rather than a learning … | 32 | 1086 | experimental |
| PureSwift/Cacao Cacao is a pure Swift cross-platform reimplementation of UIKit (Cocoa Touch) that runs on macOS and Linux. It lets Swift developers build G… | 23 | 1081 | experimental |
| emilwidlund/bitspace Bitspace is a web-based creative computing environment for exploring and prototyping ideas, built with TypeScript. It offers a playground o… | 30 | 1026 | experimental |
| facebookresearch/AnimatedDrawings A Python tool from Meta AI that automatically animates children's drawings of human figures, implementing the algorithm from the paper 'A M… | 10 | 12808 | abandoned |
| facebookarchive/react-360 React 360 is a JavaScript framework for building interactive 360-degree and VR experiences that run in web browsers, combining WebGL/WebVR … | 10 | 8697 | abandoned |