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 |
|---|---|---|---|
| Amethyst Amethyst is a data-oriented, data-driven game engine written in Rust, built around a massively parallel Entity Component System (Specs). De… | 10 | 8032 | abandoned |
| romannurik/AndroidAssetStudio A web-based suite of tools for generating Android application assets such as launcher icons, action bar icons, notification icons, and nine… | 32 | 6592 | abandoned |
| processing/processing This is the archived original repository for the Processing Development Environment (PDE), core libraries, and Java-based creative coding l… | 61 | 6480 | abandoned |
| googlecreativelab/anypixel AnyPixel.js is an open-source software and hardware framework from Google Creative Lab for building large, unusual, interactive displays wh… | 10 | 6434 | abandoned |
| exyte/Macaw Macaw is a Swift vector graphics library for iOS with SVG support, animations, and transitions. It is now deprecated; the maintainers recom… | 32 | 6046 | abandoned |
| EmbarkStudios/kajiya Kajiya is an experimental real-time global illumination renderer written in Rust on Vulkan, hybridizing rasterization, compute, and hardwar… | 10 | 5338 | abandoned |
| WebGLStudio WebGLStudio.js is an open-source, browser-based 3D graphics editor and suite built on the LiteScene engine. It combines a WYSIWYG scene edi… | 10 | 5328 | abandoned |
| facebookarchive/Keyframes Keyframes is a Facebook library consisting of an ExtendScript tool that extracts vector animation data from Adobe After Effects files into … | 10 | 5284 | abandoned |
| nicklockwood/FXBlurView FXBlurView is a deprecated Objective-C UIView subclass that replicates the iOS 7 realtime background blur effect on iOS 5 and above, with s… | 10 | 4918 | abandoned |
| Pixel Pixel is a hand-crafted 2D game library for Go providing windowing, sprite drawing, batching, shape rendering, text, input handling, and cu… | 23 | 4528 | abandoned |
| Tencent/vap VAP (Video Animation Player) is a cross-platform library from Tencent's Penguin Esports for playing cool特效 animations using video with hard… | 40 | 4181 | abandoned |
| ericdrowell/KineticJS KineticJS is an HTML5 Canvas JavaScript framework that extends the 2d context with a scene graph, enabling canvas interactivity for desktop… | 23 | 4011 | abandoned |
| AmbientRun/Ambient Ambient is an open-source cross-platform runtime and multiplayer game engine built with Rust, WebAssembly, and WebGPU, featuring an in-game… | 23 | 3905 | abandoned |
| microsoft/Microsoft-3D-Movie-Maker The original 1995 source code for Microsoft 3D Movie Maker, a children's 3D animation application, released under the MIT license for histo… | 10 | 3833 | abandoned |
| FLIF FLIF (Free Lossless Image Format) is a lossless image format and reference implementation in C++ based on MANIAC compression, outperforming… | 23 | 3742 | abandoned |
| wellcaffeinated/PhysicsJS PhysicsJS is a modular, extendable 2D physics engine for JavaScript that supports bodies, behaviors, and multiple renderers (canvas, PIXI, … | 10 | 3714 | abandoned |
| mozilla/shumway Shumway is a Flash (SWF) virtual machine and runtime implemented entirely in JavaScript/TypeScript, rendering Flash content in the browser … | 10 | 3667 | abandoned |
| overviewer/Minecraft-Overviewer A command-line tool that renders high-resolution interactive maps of Minecraft Java Edition worlds, generating static HTML and image tiles … | 23 | 3498 | abandoned |
| HunterLarco/voxel.css voxel.css is a lightweight JavaScript/CSS library for rendering 3D voxel worlds in the browser using pure CSS transforms, with no WebGL dep… | 23 | 3351 | abandoned |
| PistonDevelopers/conrod Conrod is an easy-to-use, 2D immediate-mode GUI library written entirely in Rust, providing a widget-based toolkit with backends for winit … | 32 | 3335 | abandoned |
| facebookarchive/origami Origami is a free Quartz Composer plugin framework from Facebook that lets designers build interactive interface prototypes visually withou… | 10 | 3227 | abandoned |
| AndEngine AndEngine is a free, open-source 2D game engine for Android built on OpenGL ES, written in Java. It provides scene management, a cocos2d-in… | 32 | 3193 | abandoned |
| xbpeng/DeepMimic DeepMimic is a C++ simulation framework with a Python (SWIG/TensorFlow) wrapper that trains simulated humanoid characters to imitate motion… | 53 | 3110 | abandoned |
| processing-js/processing-js Processing.js is a JavaScript port of the Processing visualization language, allowing Processing sketches to run in the browser via HTML5 c… | 10 | 3087 | abandoned |
| haxiomic/GPU-Fluid-Experiments A cross-platform GPU-accelerated fluid simulation experiment written in Haxe, with a browser-based interactive demo. It renders real-time f… | 32 | 3064 | abandoned |
| Terrain Generator A JavaScript library that procedurally generates fantasy terrain maps using the algorithm behind the @unchartedatlas Twitter bot. It builds… | 32 | 3043 | abandoned |
| WebAR (experimental AR web browser) A helper library extending three.js for building augmented reality web experiences that run in Google's experimental WebARonARKit and WebAR… | 10 | 2915 | abandoned |
| pchen66/panolens.js Panolens.js is an event-driven, WebGL-based JavaScript panorama viewer built on top of Three.js, supporting equirectangular images, cubemap… | 10 | 2858 | abandoned |
| kaonashi-tyc/zi2zi zi2zi is a TensorFlow implementation of a conditional GAN (based on pix2pix) for learning and transferring Chinese and East Asian character… | 32 | 2752 | abandoned |
| UDST/vizicities ViziCities is a JavaScript framework for 3D geospatial visualization in the browser, built on three.js. It supports map tile basemaps, 3D b… | 32 | 2709 | abandoned |
| 500px/500px-android-blur An Android library that provides a real-time blurring view, allowing one view to display a live blurred rendering of another view using Ren… | 32 | 2687 | abandoned |
| JetBrains/skija Skija is hand-crafted Java bindings for the Skia 2D graphics library, providing idiomatic Java APIs for rendering, typography, and GPU-acce… | 32 | 2656 | abandoned |
| 0xced/iOS-Artwork-Extractor A macOS application that extracts all artwork and emoji symbols from iOS (via the iPhone Simulator) into PNG files, and can generate glossy… | 32 | 2601 | abandoned |
| seenaburns/dex-ui Dex UI is a handcrafted science-fiction-style desktop interface built with openFrameworks that runs fullscreen beneath a functioning termin… | 32 | 2554 | abandoned |
| hannobraun/fornjot Fornjot is an early-stage boundary representation (b-rep) CAD kernel written in Rust, designed as a foundation for building code-first CAD … | 10 | 2553 | abandoned |
| id-Software/wolf3d The original source code release of Wolfenstein 3D, id Software's classic raycasting first-person shooter, published in 2012 for historical… | 32 | 2552 | abandoned |
| TeehanLax/Hyperlapse.js A JavaScript library that generates dynamic hyper-lapse (moving time-lapse) sequences from Google Street View imagery. It combines Google M… | 32 | 2462 | abandoned |
| robb/hamburger-button A small Swift demo project showing an animated transition of a hamburger menu button morphing into a close (X) icon on iOS. It accompanies … | 10 | 2324 | abandoned |
| facebookarchive/Surround360 Facebook's open-source hardware and software system for capturing and rendering stereoscopic 3D 360-degree video for VR viewing. It include… | 10 | 2185 | abandoned |
| dotintent/WobbleView WobbleView is a Swift UIKit library that adds a popular wobble/jelly physics effect to any view in an iOS app. It lets developers easily ad… | 32 | 2167 | abandoned |
| ValveSoftware/ToGL ToGL is Valve's Direct3D 9 to OpenGL translation layer, extracted from the DOTA2/Source Engine codebase. It includes a bytecode-level HLSL-… | 32 | 2087 | abandoned |
| floooh/oryol Oryol is a small, portable, extensible C++ 3D coding framework that renders through GL, GLES2, WebGL, Metal, and D3D11 from the same source… | 32 | 2075 | abandoned |
| mitsuba-renderer/mitsuba2 Mitsuba 2 is a research-oriented, retargetable physically-based rendering system written in C++17, supporting CPU, SIMD-vectorized, and GPU… | 23 | 2073 | abandoned |
| raspberrypi/userland ARM-side C libraries for interfacing with the Raspberry Pi VideoCore GPU, including EGL, MMAL, OpenMAX IL, GLESv2, and vchiq bindings. The … | 10 | 2068 | abandoned |
| sorccu/cufon Cufón is a JavaScript library that replaces text on web pages with custom fonts rendered via HTML5 canvas and VML, requiring no Flash or im… | 32 | 2067 | abandoned |
| Seneral/Node_Editor_Framework A flexible and modular framework for building node-based displays and editors inside Unity, supporting custom nodes, connections, canvases,… | 10 | 2019 | abandoned |
| AMD Open Source Driver for Vulkan (AMDVLK) AMD's open-source Vulkan driver for Radeon graphics adapters on Linux, built on the Platform Abstraction Library (PAL) and the LLVM-based L… | 49 | 1978 | abandoned |
| trevorlinton/webkit.js A pure JavaScript port of WebKit's WebCore compiled via Emscripten, capable of rendering HTML5, CSS3, and SVG to WebGL/Canvas contexts in b… | 32 | 1970 | abandoned |
| uxebu/bonsai BonsaiJS is a JavaScript graphics library and renderer for drawing shapes, paths, and assets with keyframe and easing-based animation. It f… | 23 | 1962 | abandoned |
| PomepuyN/BlurEffectForAndroidDesign An Android sample application demonstrating how to implement blur graphical effects (like fast blur and RenderScript blur) in Android UIs. … | 32 | 1945 | abandoned |
| yapstudios/YapAnimator YapAnimator is a Swift physics-based animation library for iOS and macOS that makes it easy to animate any value representable as an array … | 10 | 1928 | abandoned |
| jackschaedler/goya Goya is a browser-based pixel art editor built with ClojureScript and the Om (React) library. It supports drawing, undo/redo via immutable … | 32 | 1869 | abandoned |
| ALVR ALVR (Air Light VR) is an open-source remote VR display that streams SteamVR output from a gaming PC to standalone headsets like Gear VR, O… | 10 | 1844 | abandoned |
| aras-p/glsl-optimizer A C++ library based on Mesa's GLSL compiler that performs GPU-independent optimizations on GLSL shaders and outputs optimized GLSL or Metal… | 32 | 1790 | abandoned |
| codrops/RainEffect A set of experimental WebGL demos by Lucas Bebber that render realistic rain and water drop effects on glass surfaces in web pages. It is a… | 32 | 1783 | abandoned |
| SharpDX SharpDX is an open-source .NET library providing full bindings to the DirectX API for all Windows platforms, enabling high-performance 2D/3… | 10 | 1754 | abandoned |
| Famous Engine Famous is a JavaScript rendering and animation engine for building high-performance, GPU-accelerated web interfaces. This repository is dep… | 32 | 1745 | abandoned |
| react-native-ar/react-native-arkit A React Native binding for Apple's ARKit that lets developers build augmented reality iOS apps using JavaScript. It exposes ARKit features … | 23 | 1741 | abandoned |
| inloop/svg2android A JavaScript tool that converts SVG files into Android VectorDrawable XML resource files, available both as a browser-based converter and a… | 32 | 1722 | abandoned |
| ImmortalZ/StereoView An Android custom ViewGroup that renders child views in a 3D stereo rotating carousel with infinite loop scrolling. It extends ViewGroup so… | 32 | 1676 | abandoned |
| Processing.py Python Mode for Processing, letting users write Processing sketches in Python on top of the Processing 3 JVM runtime. It integrates as a mo… | 32 | 1660 | abandoned |
| LottieFiles/lottie-player A web component for embedding and playing Lottie (Bodymovin JSON) animations and Telegram sticker (tgs) animations in websites. It is depre… | 10 | 1657 | abandoned |
| kmammou/v-hacd V-HACD is a C++ library that decomposes a 3D surface mesh into a set of near-convex parts for use in collision detection and physics simula… | 38 | 1656 | abandoned |
| CADmium-Co/CADmium CADmium is a browser-based parametric CAD program built in Rust (compiled to WASM) with a SvelteKit UI, targeting hobbyist mechanical desig… | 10 | 1637 | abandoned |
| Angelo1211/HybridRenderingEngine HRE is a real-time 3D rendering engine written in C++ with OpenGL that implements hybrid clustered forward/deferred shading with physically… | 23 | 1590 | abandoned |
| live2d-widget A JavaScript library that embeds interactive Live2D anime character widgets into webpages with an out-of-the-box experience. It supports ma… | 10 | 1578 | abandoned |
| sonicether/SEGI SEGI is a fully-dynamic voxel-based global illumination system for the Unity game engine, distributed as a Unity package of C# scripts and … | 23 | 1573 | abandoned |
| fossasia/knitweb Knitweb is a web application (frontend and backend) for creating and editing knitting patterns, working together with the Knitlib server an… | 32 | 1539 | abandoned |
| SiliconStudio/xenko This is the archived original repository for Xenko, a free open-source C# 2D/3D game engine now renamed Stride and hosted at xenko3d/xenko.… | 10 | 1522 | abandoned |
| dodola/MetaballLoading An Android library that renders a 2D metaball-style loading animation as a custom view. It includes a debug mode for tweaking visual parame… | 32 | 1518 | abandoned |
| digital-standard/ThreeDPoseUnityBarracuda A Unity sample project that performs real-time 3D human pose estimation from video using an ONNX model loaded via Unity Barracuda, driving … | 32 | 1517 | abandoned |
| Izzimach/react-three-legacy React bindings for creating and controlling 3D scenes with three.js via WebGL canvases. It is a deprecated legacy package whose author reco… | 32 | 1513 | abandoned |
| FOSSASIA-Web/knitting.fossasia.org An umbrella project for FOSSASIA's open source knitting software, centered on kniteditor, a desktop GUI application for creating and editin… | 32 | 1507 | abandoned |
| fastred/MotionBlur An Objective-C library that adds motion blur effects to iOS UIView animations, primarily for position changes. It works by snapshotting the… | 32 | 1493 | abandoned |
| react-three-renderer A React renderer that lets you build three.js scenes declaratively using React components rendered into a WebGL canvas. The project is froz… | 10 | 1482 | abandoned |
| FOSSASIA-Web/fossbridge.com FOSSBridge.com is a FOSSASIA project hosting artwork and design assets, published as a simple HTML website. It appears to be a static site … | 32 | 1475 | abandoned |
| TileView Widget TileView is an Android ViewGroup subclass that asynchronously renders, pans, and zooms very large images by composing bitmap tiles, with pl… | 23 | 1454 | abandoned |
| Scientific Illustrator A Codex plugin with MCP servers that lets an AI agent draw scientific figures live inside the visible draw.io desktop canvas, editing shape… | 59 | 1453 | abandoned |
| kripken/BananaBread BananaBread is a port of the Cube 2/Sauerbraten C++ 3D game engine and first-person shooter to the web, compiled to JavaScript/WebAssembly … | 32 | 1452 | abandoned |
| thomasxiii/photon Photon is a JavaScript library that simulates 3D lighting effects on DOM elements using CSS3 transforms and gradients. It lets developers a… | 32 | 1445 | abandoned |
| ValveSoftware/vogl A tool for capturing and replaying OpenGL calls from applications, primarily aimed at debugging graphics issues in games. It records OpenGL… | 32 | 1432 | abandoned |
| RaduMC/AssetStudio AssetStudio is a standalone Windows GUI tool for exploring, previewing, and extracting assets from Unity game files and bundles. It can exp… | 23 | 1422 | abandoned |
| drewwilson/atvImg A lightweight 2kb vanilla JavaScript plugin that turns layered PNG images into 3D parallax icons mimicking the Apple TV app icon effect. It… | 32 | 1420 | abandoned |
| Environment Project A deprecated environment plugin for Unreal Engine 4 providing ocean and sky simulation, buoyancy, time-of-day, and fish plugins. It has bee… | 32 | 1401 | abandoned |
| digitalfruit/limejs LimeJS is an HTML5 JavaScript game framework for building 2D games that run in modern browsers and on iOS via Mobile Safari. It is built on… | 32 | 1387 | abandoned |
| amitp/mapgen2 A procedural map generator for games, written in ActionScript (Flash), that creates island/continent maps with coastlines, mountains, and r… | 38 | 1377 | abandoned |
| SonyWWS/LevelEditor Sony's standalone WYSIWYG level editor for designing game levels, maps, and virtual worlds, built on the Authoring Tools Framework with C# … | 32 | 1376 | abandoned |
| Helpsypoo/primerpython A Python library of tools for building and animating objects in Blender, used to create the Primer YouTube channel's educational videos. It… | 10 | 1365 | abandoned |
| romannurik/LayerVisualizer A simple web-based 3D layer visualizer for visualizing material UIs and other designs involving depth and shadows. It also includes a layou… | 32 | 1348 | abandoned |
| ubisoft/mixer Mixer is a Blender add-on developed by Ubisoft Animation Studio that enables multiple Blender users to collaborate on the same 3D scene in … | 10 | 1345 | abandoned |
| robcupisz/LightShafts A Unity plugin implementing volumetric shadows (light shafts / light scattering) for directional and spot lights. It uses adaptive raymarch… | 32 | 1340 | abandoned |
| njdehoog/NHBalancedFlowLayout A UICollectionViewLayout subclass for iOS that displays items of different sizes in a grid without wasting visual space, using a balanced p… | 32 | 1337 | abandoned |
| NVIDIA/Q2RTX Quake II RTX is NVIDIA's fully path-traced reimplementation of Id Software's 1997 game Quake II, built on the Q2VKPT and Q2PRO engine branc… | 10 | 1318 | abandoned |
| max-mapper/voxel-engine A JavaScript library for building 3D voxel games in the browser using three.js and HTML5. It provides chunk-based world generation, block m… | 32 | 1313 | abandoned |
| Creatide/AnimateMate AnimateMate is a Sketch plugin for creating and exporting simple animations directly inside Sketch using keyframes. It lets designers anima… | 10 | 1313 | abandoned |
| supperjet/Canvas-2d-animation-engine A JavaScript library for creating 2D animation effects on the HTML5 canvas. It provides reusable canvas-based animation effects for web pag… | 32 | 1290 | abandoned |
| unity3d-jp/unitychan-crs Unity-Chan 'Candy Rock Star' is a live stage demo project for the Unity game engine featuring Unity Japan's mascot character performing a s… | 23 | 1290 | abandoned |
| mitsuba-renderer/enoki Enoki is a C++17 header-only template library for structured vectorization and automatic differentiation of numerical code, compiling the s… | 10 | 1290 | abandoned |
| wuapnjie/StickerView An Android custom view library for adding interactive stickers (images and text) to a layout, with support for zooming, dragging, flipping,… | 10 | 1287 | abandoned |
| edankwan/The-Spirit The Spirit is a WebGL-based visual experiment by Edan Kwan that creates a smoky particle effect using curl noise and noise derivatives. It … | 32 | 1285 | abandoned |