Open-source graphics software
2502 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.
2502 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| patriciogonzalezvivo/glslCanvas GlslCanvas is a JavaScript library that loads GLSL fragment and vertex shaders onto HTML canvas elements using WebGL. It handles WebGL cont… | 23 | 2275 | maintenance |
| MikeFricker/StreetMap An Unreal Engine plugin that imports OpenStreetMap XML (.osm) data as a StreetMap asset type and renders streets and buildings in 3D. It in… | 32 | 2272 | maintenance |
| kuglee/TermiWatch TermiWatch is a custom terminal-style watch face application for Apple Watch, written in Swift. It is installed by building and sideloading… | 23 | 2272 | maintenance |
| wdas/brdf Disney BRDF Explorer is a desktop application for developing, loading, and analyzing bidirectional reflectance distribution functions (BRDF… | 32 | 2268 | maintenance |
| overboming/ZCAnimatedLabel ZCAnimatedLabel is an Objective-C UILabel replacement for iOS that provides fine-grained appear/disappear animations for text. It supports … | 32 | 2264 | maintenance |
| googlevr/tilt-brush The open-source release of Google's Tilt Brush, a virtual reality painting application built in Unity/C#. It lets users paint in 3D space w… | 10 | 2264 | maintenance |
| Fooidge/PleaseJS PleaseJS is a small JavaScript library that generates random aesthetically pleasing colors and color schemes using the HSV color space and … | 23 | 2263 | maintenance |
| chjj/compton Compton is a lightweight standalone X11 compositor forked from xcompmgr-dana, written in C. It adds window effects like shadows, transparen… | 23 | 2262 | maintenance |
| google/marzipano Marzipano is a JavaScript 360° media viewer for the web, built on WebGL, for displaying panoramas and virtual tours. It provides a powerful… | 10 | 2259 | maintenance |
| ajstarks/svgo SVGo is a Go library for programmatically generating SVG (Scalable Vector Graphics 1.1) documents, writing output to any io.Writer. It supp… | 32 | 2251 | maintenance |
| Yalantis/Horizon Horizon is an Android library that renders a smooth, animated visual equalizer of live audio using OpenGL ES and C++ sound analysis. It dra… | 32 | 2245 | maintenance |
| google/gapid GAPID is a collection of tools for recording, inspecting, tweaking, and replaying calls made by an application to a graphics driver, suppor… | 23 | 2239 | maintenance |
| justinmeister/Mario-Level-1 A Python and Pygame recreation of the first level of Super Mario Bros. It is an educational, non-commercial project demonstrating 2D game m… | 32 | 2237 | maintenance |
| anopara/genetic-drawing A Python toy project that uses a genetic algorithm to progressively draw a target image with brushstrokes, producing animated drawing seque… | 32 | 2226 | maintenance |
| axstin/rbxfpsunlocker A Windows utility that removes Roblox's 60 FPS cap by modifying running Roblox processes, allowing higher framerates on capable hardware. I… | 10 | 2224 | maintenance |
| pmndrs/racing-game An open-source browser-based racing game built with React and react-three-fiber, serving as a showcase for using React semantics in game de… | 32 | 2220 | maintenance |
| wentin/underlineJS A JavaScript library that draws and animates pixel-perfect, typographically optimized text underlines in the browser, with features like de… | 32 | 2218 | maintenance |
| ashawkey/torch-ngp A PyTorch implementation of instant-ngp's NeRF and SDF components with CUDA extensions and an interactive GUI for training and visualizatio… | 32 | 2210 | maintenance |
| unash/BarrageRenderer BarrageRenderer is an open-source iOS library for rendering danmaku (bullet comments/barrage) overlays on top of any UIView, written in Obj… | 32 | 2196 | maintenance |
| mkeeter/antimony Antimony is a computer-aided design (CAD) application with a node-based, scriptable workflow, described as CAD from a parallel universe whe… | 40 | 2190 | maintenance |
| GPUOpen-Effects/FidelityFX-FSR AMD FidelityFX Super Resolution (FSR 1.0) is an open-source spatial upscaling solution that produces high-resolution frames from lower-reso… | 23 | 2187 | maintenance |
| wayou/t-rex-runner A standalone extraction of the Chrome offline 'no internet' T-Rex runner game from the Chromium source code, written in JavaScript. It can … | 32 | 2184 | maintenance |
| Hauberk Hauberk is a web-based roguelike dungeon crawl game written in Dart, featuring ASCII-art graphics and procedurally generated dungeons. It r… | 75 | 2171 | maintenance |
| harjot-oberai/MaterialShadows An Android library that renders convex material design shadows for views of any shape, using bitmap outline extraction and the Graham scan … | 32 | 2167 | maintenance |
| kenperlin/chalktalk Chalktalk is a digital presentation and communication language developed at NYU's Future Reality Lab, using a blackboard-like interface whe… | 32 | 2161 | maintenance |
| nekocode/CameraFilter An Android demo app that applies realtime camera filters using OpenGL ES shaders. It ports a variety of WebGL shader effects (mosaics, edge… | 23 | 2155 | maintenance |
| Geometrize Geometrize is a cross-platform desktop application that recreates images as abstract arrangements of geometric primitives like circles, tri… | 23 | 2148 | maintenance |
| TorqueGameEngines/Torque3D Torque3D is an open-source (MIT licensed) 3D game engine originally developed by GarageGames, written in C++. It supports building games fo… | 66 | 2132 | maintenance |
| Chessboard.js chessboard.js is a standalone JavaScript chessboard component for embedding interactive chess boards in web pages. It is intentionally 'jus… | 32 | 2131 | maintenance |
| phoboslab/Impact Impact is an HTML5 game engine written in JavaScript for building 2D browser games, including Weltmeister, its built-in level editor. It is… | 32 | 2130 | maintenance |
| Kimera Kimera is a modular C++ library for real-time metric-semantic SLAM that builds semantically annotated 3D meshes from camera and inertial da… | 32 | 2130 | maintenance |
| dntzhang/cax Cax is a lightweight Canvas 2D rendering engine with SVG path support, built-in display objects (Bitmap, Sprite, Graphics, Shape, Text), cl… | 32 | 2124 | maintenance |
| SlightlyMad/VolumetricLights An open-source Unity extension that adds volumetric fog and light shafts to built-in Unity lights using ray marching in the light's volume.… | 32 | 2116 | maintenance |
| fogleman/pt A CPU-only unidirectional path tracing engine written in pure Go with a simple API. It supports OBJ/STL meshes, textures, SDF raymarching, … | 32 | 2108 | maintenance |
| doyubkim/fluid-engine-dev Jet is a C++11 fluid simulation engine SDK for computer graphics, created alongside the book 'Fluid Engine Development'. It provides SPH, P… | 23 | 2102 | maintenance |
| vsmode/pixel8 Pixel8 is a React library of low-res primitives for creating pixel art and games in the browser. It uses a custom React renderer and ArrayB… | 32 | 2101 | maintenance |
| SebLague/Path-Creator A Unity asset for creating and editing Bézier paths in the Unity editor, useful for defining roads, tracks, and object movement paths. It i… | 32 | 2095 | maintenance |
| sobotka/filmic-blender An OpenColorIO configuration that adds film emulsion-like camera rendering view transforms to Blender's Cycles and Renderman render engines… | 23 | 2079 | maintenance |
| knightcrawler25/GLSL-PathTracer A toy physically based GPU path tracer written in C++ that runs its rendering loop in GLSL fragment shaders via OpenGL. It supports feature… | 23 | 2064 | maintenance |
| WangShuo1143368701/WSLiveDemo An Android live-streaming SDK providing RTMP pushing, video recording, and GPU-based filters including adjustable beauty effects. It uses O… | 23 | 2060 | maintenance |
| sschoger/heroicons-ui Heroicons UI is a set of 104 free, premium-quality SVG icons released under the MIT license. It provides ready-to-use icon assets for use i… | 32 | 2056 | maintenance |
| EKA2L1/EKA2L1 EKA2L1 is an open-source emulator for Symbian OS and the Nokia N-Gage, written in C++17. It emulates the EKA1/EKA2 kernels and reimplements… | 68 | 2055 | maintenance |
| UnityMeshSimplifier A C# mesh simplification (decimation) library for Unity, based on the Fast Quadric Mesh Simplification algorithm. It works in the Unity edi… | 53 | 2052 | maintenance |
| PyMesh/PyMesh PyMesh is a rapid prototyping geometry processing library for Python, with performance-critical algorithms implemented in C++ and exposed v… | 23 | 2050 | maintenance |
| microsoft/maker.js Maker.js is a JavaScript/TypeScript library from Microsoft Garage for programmatically creating 2D vector line drawings using geometric and… | 68 | 2043 | maintenance |
| memononen/nanosvg NanoSVG is a simple single-header C library that parses SVG files into a list of cubic bezier shapes, with an accompanying lightweight rast… | 70 | 2031 | maintenance |
| vislyhq/stretch Stretch is a high-performance Flexbox layout engine written in Rust with bindings for Rust, JavaScript/TypeScript, Kotlin (Android), and Sw… | 32 | 2030 | maintenance |
| darglein/ADOP ADOP is a point-based differentiable neural rendering pipeline for scene refinement and novel view synthesis, implemented in C++/CUDA with … | 23 | 2028 | maintenance |
| animate1978/MB-Lab MB-Lab is a Blender addon for parametric 3D human character creation, forked from the discontinued ManuelBastioniLAB. It generates and cust… | 10 | 2027 | maintenance |
| VectAlign VectAlign is a Java tool that aligns two VectorDrawable pathData strings or SVG images so they become compatible for morphing animations vi… | 32 | 2012 | maintenance |
| a327ex/SNKRX SNKRX is a replayable arcade shooter roguelite where the player steers a snake of heroes that automatically attack nearby enemies. It is bu… | 32 | 2000 | maintenance |
| keijiro/Klak Klak is a collection of C# scripts for creative coding in Unity, providing utilities like Perlin noise, reproducible random numbers, frame-… | 23 | 1999 | maintenance |
| orangeduck/Corange Corange is a pure C game engine built on SDL and OpenGL, providing asset, entity, and UI management plus a modern deferred renderer. It ser… | 32 | 1993 | maintenance |
| ejoy/ejoy2d EJOY 2D is a lightweight 2D graphics engine written in C and scripted with Lua, designed for building mobile games. It ships with a small r… | 32 | 1987 | maintenance |
| furnishup/blueprint3d A customizable TypeScript library built on three.js for designing interior spaces like homes and apartments in 3D. It provides 2D floorplan… | 23 | 1985 | maintenance |
| yishn/tikzcd-editor A browser-based visual editor for creating commutative diagrams that exports to tikzcd LaTeX code. It can be self-hosted from a static buil… | 23 | 1984 | maintenance |
| reactjs/react-art React ART is a React bridge to the ART vector drawing library, providing declarative React components for rendering vector graphics. It can… | 10 | 1982 | maintenance |
| google/nerfies Nerfies is the official JAX implementation of Deformable Neural Radiance Fields, which reconstructs non-rigidly deforming scenes from casua… | 10 | 1974 | maintenance |
| bijection/g9 g9 is a JavaScript library for creating automatically interactive graphics. You write a render function that draws shapes from data, and g9… | 32 | 1972 | maintenance |
| widgetti/ipyvolume A Python library for 3D plotting in Jupyter notebooks, built on IPython widgets and WebGL. It supports volume rendering, scatter and quiver… | 32 | 1964 | maintenance |
| Themaister/Granite Granite is a personal Vulkan renderer written in C++, featuring a simplified Vulkan abstraction layer and a fairly complete render graph im… | 75 | 1961 | maintenance |
| feathericons/react-feather react-feather is a React component library exposing the Feather Icons set as inline SVG components on a 24x24 grid. It allows importing ind… | 32 | 1948 | maintenance |
| ray-cast/ray-mmd Ray-MMD is a free shader library and extension pack for MikuMikuDance that adds physically-based rendering (PBR) via HLSL shaders on the Mi… | 23 | 1941 | maintenance |
| UnityTechnologies/ShaderGraph_ExampleLibrary A collection of example shaders built with Unity's Shader Graph, targeting the Lightweight Scriptable Render Pipeline. It includes examples… | 32 | 1929 | maintenance |
| watabou/TownGeneratorOS The open-source Haxe code behind the Medieval Fantasy City Generator, a procedural tool that generates medieval fantasy city maps. It uses … | 32 | 1928 | maintenance |
| mp3guy/ElasticFusion ElasticFusion is a real-time dense visual SLAM system that builds globally consistent surfel-based 3D maps of room-scale environments from … | 44 | 1927 | maintenance |
| Yalantis/StarWars.Android An Android UI library by Yalantis that implements a transition animation crumbling a view into tiny tiles using OpenGL ES 2.0 and GLSL shad… | 32 | 1927 | maintenance |
| FUE5BASE/FUE5 FUE5 is a fan-made Unreal Engine 5 project that recreates Factorio bases in 3D, letting players import their in-game factories via a compan… | 30 | 1925 | maintenance |
| gocraft GoCraft is a Minecraft-like voxel sandbox game written in Go using OpenGL, supporting terrain generation, block placement/removal, movement… | 32 | 1898 | maintenance |
| KytyPS5/KytyPS5 KytyPS5 is a free, open-source PlayStation 5 emulator written in C++, based on a heavily modified version of Kyty. It can boot a limited se… | 78 | 9532 | experimental |
| jonnyhyman/Chaos A collection of standalone Python scripts that visualize the connections between chaos theory, fractals, and the logistic map, created for … | 32 | 1889 | maintenance |
| serge-rgb/milton Milton is an open-source infinite-canvas paint program written in C++ with SDL and OpenGL. It feels raster-based but works with vectors, al… | 23 | 1887 | maintenance |
| TixiaoShan/LVI-SAM LVI-SAM is a tightly-coupled Lidar-Visual-Inertial Odometry and mapping system implemented in C++ on ROS, combining LIO-SAM and VINS-Mono a… | 32 | 1884 | maintenance |
| robin-dela/hover-effect A small JavaScript library that draws and animates images with WebGL-based distortion effects when hovering. It wraps Three.js and GSAP to … | 32 | 1883 | maintenance |
| dhotson/springy Springy is a small JavaScript library implementing a force-directed graph layout algorithm using physics simulation. It provides graph mani… | 32 | 1881 | maintenance |
| Raspberry Pi FBTFT Firmware FBTFT is a collection of Linux kernel framebuffer drivers for small TFT LCD display modules, making it easy to write drivers for these disp… | 10 | 1878 | maintenance |
| gographics/imagick Go bindings to ImageMagick's MagickWand C API, enabling image manipulation from Go via CGO. It supports ImageMagick 6 and 7 through separat… | 66 | 1877 | maintenance |
| soulwire/fit.js Fit.js is a tiny JavaScript library that scales and aligns one rectangular object (DOM element or plain rect) to fit inside another while p… | 32 | 1877 | maintenance |
| Pomax/bezierjs Bezier.js is an ES Module library for Node.js and browsers that performs quadratic and cubic Bezier curve computations. It provides a Bezie… | 32 | 1873 | maintenance |
| playdeadgames/temporal A Unity library implementing Temporal Reprojection Anti-Aliasing, the anti-aliasing solution used in Playdead's game INSIDE. It provides ca… | 32 | 1873 | maintenance |
| mrdoob/texgen.js texgen.js is a JavaScript library for generating procedural textures in the browser. It composes operations like XOR patterns, sine waves, … | 32 | 1865 | maintenance |
| evanw/csg.js A small JavaScript library implementing Constructive Solid Geometry (CSG) on 3D meshes using BSP trees. It supports Boolean operations like… | 32 | 1861 | maintenance |
| vaneenige/phenomenon Phenomenon is a 2kB, dependency-free, low-level WebGL library written in TypeScript. It provides the essentials for high-performance GPU re… | 23 | 1847 | maintenance |
| btmills/geopattern GeoPattern is a JavaScript library that deterministically generates tiling SVG geometric patterns from an input string, seeded via SHA-1 ha… | 23 | 1842 | maintenance |
| peng-zhihui/Peak Peak is a tiny smart terminal device kit: a portable ESP32-based firmware and hardware project integrating the LVGL graphics framework, an … | 32 | 1841 | maintenance |
| teenyicons/teenyicons Teenyicons is a set of tiny minimal 1px-stroke SVG icons designed on a 15x15 grid to fit in very small spaces while staying crisp. It ships… | 66 | 1835 | maintenance |
| microsoft/ShaderConductor ShaderConductor is a C++ tool and library that cross-compiles HLSL shaders to other shading languages such as GLSL, ESSL, and Metal Shading… | 10 | 1835 | maintenance |
| dege-diosg/dgVoodoo2 dgVoodoo2 is a wrapper library that translates legacy Glide and DirectX graphics APIs (DirectDraw, D3D1-9) onto modern D3D11/12, letting ol… | 91 | 1834 | maintenance |
| tunabrain/tungsten Tungsten is a high-performance physically based renderer written in C++11 that simulates full light transport through arbitrary geometry us… | 23 | 1834 | maintenance |
| cmuratori/refterm refterm is a reference renderer for monospace terminal displays written in C, demonstrating that sensible design achieves reasonable frame … | 23 | 1832 | maintenance |
| JohnSundell/ImagineEngine Imagine Engine is a fast 2D game engine for Apple platforms written in Swift, using Core Animation for hardware-accelerated rendering. It p… | 23 | 1830 | maintenance |
| leapmotion/ProjectNorthStar Open-source reference design for Leap Motion's Project North Star augmented reality headset, including mechanical CAD, electrical designs, … | 50 | 1822 | maintenance |
| fholger/openvr_fsr A modified OpenVR DLL that injects AMD FidelityFX Super Resolution or NVIDIA Image Scaling upscaling into D3D11-based SteamVR games to boos… | 23 | 1812 | maintenance |
| HaikuTeam/animator Haiku Animator is an open-source desktop design tool for creating Lottie animations and interactive web components with a visual canvas, ti… | 23 | 1811 | maintenance |
| Unity-Technologies/VolumetricLighting A Unity library of lighting effects from the Adam demo, providing volumetric fog, area lights, and tube lights implemented with compute sha… | 32 | 1799 | maintenance |
| HFIProgramming/mikutap A self-hosted, Mainland China-friendly mirror of the interactive Mikutap web toy from aidn.jp, where clicking, dragging, or pressing keys t… | 10 | 1799 | maintenance |
| webkul/vivid Vivid.js is a lightweight JavaScript library providing 90+ hand-crafted SVG icons that can be injected into the DOM via simple HTML5 data a… | 32 | 1796 | maintenance |
| emoose/DLSSTweaks A tweak DLL that lets users customize NVIDIA DLSS behavior in games, such as forcing DLAA, adjusting scaling ratios, changing DLSS presets,… | 55 | 1786 | maintenance |
| tbtlr/gordon Gordon is an open source Adobe Flash runtime implemented entirely in pure JavaScript, capable of playing SWF content in the browser without… | 75 | 1785 | maintenance |
| Unity-Technologies/Animation-Instancing A Unity technique and sample project from Unity Technologies for instancing SkinnedMeshRenderer characters to improve CPU/GPU performance i… | 32 | 1785 | maintenance |