✦ Free resources
Creative Coding Tools, WebGL Libraries and Shader Resources
Frameworks for generative art, WebGL and WebGPU libraries, shader editors and live coding tools for visuals and sound. Most are open source, and many come from lists by creative coders like Matt DesLauriers.
- 193 free resources
- 164 open source
- 11 with a free plan
- 17 paid picks
- Every link checked
Graphics and creative coding
- A-FrameOpen sourceWeb framework for building virtual reality experiences with HTMLaframe.io
- AlfridOpen sourceWebGL toolkit for building 3D scenesgithub.com
- ammo.jsOpen sourcePort of the Bullet physics engine to JavaScript using Emscriptengithub.com
- apitraceOpen sourceTraces OpenGL and Direct3D calls to a file so you can replay and inspect themapitrace.github.io
- ArduinoOpen sourceOpen source microcontroller boards and software for building interactive devices and objectsarduino.cc
- AssimpOpen sourceLibrary that imports more than 40 3D model formats into one data structuregithub.com
- AsyncGraphicsOpen sourceSwift package for editing images and live graphics with async and await on Metalgithub.com
- basil.jsOpen sourceJavaScript scripting library for InDesign aimed at designers and artistsbasiljs2.netlify.app
- BeagleBoardOpen sourceLow-power open hardware single-board computers for makers, educators and professionalsbeagleboard.org
- cables.glFree tierBrowser based node editor for building interactive 3D and WebGL contentcables.gl
- Cannon.jsOpen sourceLightweight 3D physics engine for the webschteppe.github.io
- canvas-sketchOpen sourceBrowser framework for making generative art and exporting high resolution outputgithub.com
- CesiumJSOpen sourceJavaScript library for building 3D globes and mapscesium.com
- ChartGPUOpen sourceInteractive charting library that renders with WebGPUgithub.com
- ChucKOpen sourceStrongly timed programming language for real-time music and audiochuck.cs.princeton.edu
- ClayGLOpen sourceWebGL graphics library for building scalable 3D web applicationsclaygl.xyz
- CopperLichtOpen sourceJavaScript WebGL 3D library with a free world editor for games and 3D appsambiera.com
- CsoundOpen sourceSound and music computing system with a large library of synthesis toolscsound.com
- css-doodleOpen sourceWeb component for drawing patterns and generative art with CSScss-doodle.com
- CYOSFreeOnline editor for writing and previewing Babylon.js shaderscyos.babylonjs.com
- DawnOpen sourceGoogle WebGPU implementation used by Chromium, also usable as a standalone packagedawn.googlesource.com
- deck.glOpen sourceWebGL layer library for large scale data visualization overlays on mapsdeck.gl
- DenoOpen sourceJavaScript and TypeScript runtime that can run WebGPU code through an unstable flagdocs.deno.com
- dither-flowOpen sourceCursor-driven 1-bit dithered flow field effect in WebGL 2 with zero dependenciesgithub.com
- DrawBotOpen sourcePython based 2D graphics programming app for learning and making drawings on the Macdrawbot.com
- EmdawnwebgpuOpen sourceDawn maintained WebGPU bindings for Emscripten applicationsgithub.com
- encantar.jsOpen sourceGPU accelerated augmented reality library for the web that needs no WebXR supportgithub.com
- Fabric.jsOpen sourceJavaScript canvas library with object model and SVG parsingfabricjs.com
- Fast3DFree tierBrowser tools to convert, compress and preview 3D model files plus AI model generationfast3d.org
- fisheye.jsOpen sourceWebGPU library that corrects fisheye distortion in images and videogithub.com
- FLTKOpen sourceLightweight cross-platform C++ toolkit for building user interface widgetsfltk.org
- Fractal LabFreeInteractive WebGL explorer for navigating fractals in your browserhirnsohle.de
- FragmentOpen sourceWeb development environment for creative coding with sketches and shadersgithub.com
- freeGLUTOpen sourceLibrary for creating windows with OpenGL contexts and handling inputfreeglut.sourceforge.net
- GammaCVOpen sourceGPU accelerated computer vision library for the browsergammacv.com
- GEngineOpen sourceBasic rendering engine for 3D scenes built on WebGPUgithub.com
- gl3wOpen sourceSimple loader for OpenGL core profile functionsgithub.com
- gladOpen sourceLoader generator for Vulkan, OpenGL, GLES, EGL and platform GL APIsgithub.com
- glbindingOpen sourceC++ OpenGL binding generated from the official specs with type safetygithub.com
- GLEWOpen sourceCross-platform library that loads OpenGL extensionsglew.sourceforge.net
- GLFMOpen sourceProvides an OpenGL ES context and input events on iOS, Android and the webgithub.com
- GLFWOpen sourceMulti-platform library for creating OpenGL, OpenGL ES and Vulkan windows and inputglfw.org
- GlicolOpen sourceGraph oriented live coding language and audio DSP library written in Rustglicol.org
- GLInterceptOpen sourceOpenGL function call interceptor and logger for Windowsgithub.com
- GLMOpen sourceHeader-only C++ math library that mirrors GLSL types for graphics codeglm.g-truc.net
- glMatrixOpen sourceJavaScript matrix and vector math library for high performance WebGL appsglmatrix.net
- GlobedotsOpen sourceSmall WebGL2 dot-matrix globe with markers, arcs, labels, heat maps and a day-night linegithub.com
- GLSL SandboxOpen sourceOnline shader editor and gallery for sharing fragment shadersglslsandbox.com
- glslEditorOpen sourceBrowser editor for writing fragment shaders with live previeweditor.thebookofshaders.com
- glslSceneOpen sourceWindows environment for testing and developing GLSL shader programsgithub.com
- glslViewerOpen sourceCommand line tool that renders and live reloads GLSL shaderspatriciogonzalezvivo.com
- glslViewerOpen sourceCommand-line GLSL sandbox for live-coding 2D and 3D shaders on macOS and Linuxgithub.com
- HandelOpen sourceSmall programming language for writing songs that play in the browserhandel-pl.github.io
- hg_sdfOpen sourceGLSL library of signed distance function helpers for building shader scenesmercury.sexy
- Hilo3dOpen sourceWebGL rendering engine for 3D games and interactive experiencesgithub.com
- hwoa-rang-gpuOpen sourceSmall WebGPU library for rendering and compute work in the browsergithub.com
- HydraOpen sourceBrowser based live coding video synthhydra.ojack.xyz
- img2threejsOpen sourceToolkit that rebuilds the object in a reference image as a procedural Three.js modelgithub.com
- Intel Graphics Performance AnalyzersFreeIntel tools for profiling and debugging graphics performance in gamesintel.com
- ISFFreeInteractive Shader Format for writing GLSL shaders that run across video and VJ appsisf.video
- JanusXRFreeBrowser and client that turns webpages into shared 3D spaces linked by portalsjanusvr.com
- JOY.JSOpen sourceBrowser tool for making small visual programs, aimed at beginnersncase.me
- JSCADOpen sourceProgrammatic 3D modeling library and editor in JavaScriptopenjscad.xyz
- KlakOpen sourceCreative coding scripts and libraries for Unitygithub.com
- KonstruktOpen sourceCommand line tool that generates scalable SVG patternsgithub.com
- KTX2 Texture CompressorFreeIn-browser converter from PNG, JPG and WebP to KTX2 textures, with no uploadapp.cinevva.com
- leaflet-webgl-markersOpen sourceLeaflet plugin that draws millions of point markers on one WebGL canvasgithub.com
- lightgl.jsOpen sourceLightweight WebGL library that simplifies common 3D drawing tasksgithub.com
- LivecodelabOpen sourceBrowser tool for run-as-you-type live coding of visuals, aimed at teaching and VJslivecodelab.net
- LOVROpen sourceSimple Lua framework for building virtual reality experienceslovr.org
- luma.glOpen sourceHigh performance WebGL 2 toolkit for data visualizationgithub.com
- luma.glOpen sourceWebGL2 framework for GPU powered data visualization and computationluma.gl
- LYGIAFree tierShader library of reusable functions in GLSL, HLSL, WGSL, MSL and CUDAgithub.com
- MagnumOpen sourceModular C++ graphics middleware for games and data visualizationgithub.com
- Maker.jsOpen sourceJavaScript library for parametric line drawings aimed at SVG, CNC and laser cuttersmaker.js.org
- MapMetrics GLOpen sourceMapbox GL JS compatible mapping library with vector tiles, geocoding, routing and searchgithub.com
- MelroseOpen sourceEnvironment for creating and live coding MIDI musicgithub.com
- nannouOpen sourceOpen source creative coding framework for the Rust languagenannou.cc
- NAP FrameworkOpen sourceC++ platform for real-time control and visualization in professional installationsnap-framework.tech
- NEORTFreeOnline platform for sharing fragment shader and JavaScript canvas artneort.io
- NixieFXOpen sourceParticle and VFX runtime for PixiJS and Three.js with a browser based editorgithub.com
- NodeBoxOpen sourceNode based desktop app for generative graphics and data visualizationnodebox.net
- NotchFree tierNode based real-time graphics authoring tool for visuals and live showsnotch.one
- Novaframe EngineOpen sourceDesktop live wallpaper runtime for macOS and Windows that runs WebGL and Three.js shadersgithub.com
- NVIDIA Nsight Visual Studio EditionFreeGPU debugging and profiling tools that work inside Microsoft Visual Studiodeveloper.nvidia.com
- OGLOpen sourceMinimal WebGL library for building 3D scenes in JavaScriptgithub.com
- Oimo.jsOpen sourceLightweight 3D physics engine for JavaScriptgithub.com
- ONNX Runtime WebOpen sourceBrowser runtime for ONNX machine learning models with a WebGPU backendonnxruntime.ai
- OpenProcessingFree tierOnline community and editor for sharing p5.js and Processing sketchesopenprocessing.org
- OPENRNDROpen sourceKotlin library for creative coding, visuals and interactive installationsopenrndr.org
- OrcaOpen sourceEsoteric live coding environment for building procedural sequencers100r.co
- OSG.jsOpen sourceWebGL framework built on OpenSceneGraph conceptscedricpinson.github.io
- ossia scoreOpen sourceSequencer for scripting interactive audio, video and light showsossia.io
- OvertoneOpen sourceClojure audio environment for synthesis and building instrumentsovertone.github.io
- p2.jsOpen sourceJavaScript 2D rigid body physics enginegithub.com
- p5.jsOpen sourceJavaScript library for creative coding, built on the goals of Processingp5js.org
- p5.js Web EditorOpen sourceBrowser editor for writing and running p5.js sketcheseditor.p5js.org
- P5LIVEOpen sourceLive coding environment for p5.js in the browserteddavis.org
- PangolinOpen sourceLightweight C++ library for OpenGL display, interaction and video inputgithub.com
- Paper.jsOpen sourceVector graphics scripting framework that runs on top of the HTML5 canvaspaperjs.org
- PhenomenonOpen sourceTiny low-level WebGL library for building fast graphics experiencesgithub.com
- PicoGL.jsOpen sourceMinimal WebGL 2 rendering library for JavaScript appsgithub.com
- PicoGL.jsOpen sourceMinimal rendering library built only for WebGL 2tsherif.github.io
- PixelKitOpen sourceSwift framework for live graphics built on Metalgithub.com
- Planck.jsOpen sourceJavaScript 2D physics engine for HTML5 gamesgithub.com
- Pocket.glOpen sourceCustomizable WebGL shader sandbox you can embed in your own pagesgithub.com
- PointsOpen sourceGenerative art library for creating visuals with WebGPUgithub.com
- Pts.jsOpen sourceJavaScript library for visualization and creative codingptsjs.org
- Pure DataOpen sourceOpen source visual programming language for real-time audio and multimediapuredata.info
- py5Open sourcePython library that brings Processing sketching to the Python 3 ecosystempy5coding.org
- raylibOpen sourceSimple C library for learning and building video gamesgithub.com
- React Native WebGPUOpen sourceWebGPU for React Native apps, built on Google's Dawn implementationgithub.com
- RedCubeOpen sourceglTF renderer and viewer with a WebGPU backend and a WebGL fallbackgithub.com
- RedGPUOpen sourceJavaScript WebGPU library for 3D renderinggithub.com
- reglOpen sourceFunctional WebGL library that wraps state handling into simple commandsgithub.com
- RenderDocOpen sourceStand-alone graphics debugger that captures and inspects framesgithub.com
- RunMatOpen sourceRuntime that runs MATLAB-syntax math code on the GPU, including in the browsergithub.com
- Shader Editor ExtensionOpen sourceChrome DevTools extension for editing WebGL shaders live in the pagegithub.com
- Shader ExpoOpen sourceDependency free shader editor with inline error logs, autocomplete and model and texture loadinganuraghazra.dev
- Shader ParkOpen sourceJavaScript library for building interactive procedural 2D and 3D shadersshaderpark.com
- ShaderFrogFree tierBrowser based WebGL shader editor and composer for building and mixing shadersshaderfrog.com
- ShaderGifOpen sourceGallery and online editor for GLSL, canvas and p5.js shader artshadergif.com
- Shdr EditorFreeOnline editor for writing and previewing GLSL shadersshdr.bkcore.com
- ShellyFreeProgramming language and editor for drawing with a turtle, aimed at learnersshelly.dev
- ShoebotOpen sourcePython environment for making vector graphics and animations through codeshoebot.github.io
- Sketch.jsOpen sourceMinimal JavaScript framework for creative coding sketchessoulwire.github.io
- SMODEFree tierReal-time engine for 2D and 3D creation, compositing and video mappingsmode.io
- sokolOpen sourceMinimal cross-platform single header libraries for C and C++github.com
- Sonic PiOpen sourceLive coding music synth for learners and performerssonic-pi.net
- spark.jsFree tierReal-time GPU texture compression library for WebGPU in the browserludicon.com
- Spector.jsOpen sourceJavaScript library for inspecting and troubleshooting WebGL scenesspector.babylonjs.com
- Spector.js ExtensionFreeBrowser extension for capturing and debugging WebGL and WebGL2 frameschromewebstore.google.com
- Speedy VisionOpen sourceGPU accelerated computer vision library for JavaScriptgithub.com
- stack.glOpen sourceEcosystem of small modular WebGL packages built on npmstack.gl
- Stage.jsOpen sourceJavaScript library for rendering and laying out 2D HTML5 gamesgithub.com
- Structure SynthOpen sourceApp that generates 3D structures from a design grammar you writestructuresynth.sourceforge.net
- SuperColliderOpen sourceAudio synthesis and algorithmic composition platform with its own languagesupercollider.github.io
- SylvesterOpen sourceJavaScript library for vector, matrix and geometry mathsylvester.jcoglan.com
- synth.textmode.artFreeLive coding editor for making textmode graphics in the browser with textmode.jssynth.textmode.art
- SyphonOpen sourceOpen source framework for sharing video frames between Mac applications in real timesyphon.v002.info
- textmode.art EditorFreeOnline editor for creating textmode.js sketches in the browsereditor.textmode.art
- textmode.jsOpen sourceJavaScript canvas library for real-time ASCII and textmode graphicscode.textmode.art
- textmode.jsOpen sourceLightweight library for real-time ASCII and textmode graphics using WebGL2github.com
- The ForceOpen sourceBrowser-based live-coding shader IDE for audio-reactive GLSL visualsshawnlawson.github.io
- thi.ngOpen sourceCollection of computational design libraries for TypeScript, JavaScript and Clojurethi.ng
- ThimbleberryOpen sourceReusable WebGPU shaders and helper functions for browser graphics projectsgithub.com
- TIC-80Open sourceFantasy computer for making and playing tiny pixel art gamestic80.com
- TidalCyclesOpen sourcePattern language for live coding musictidalcycles.org
- TiXLOpen sourceReal-time tool for making interactive 3D content and animationstixl.app
- tixy.landOpen sourceTiny browser playground for creative code golf on a 16 by 16 gridtixy.land
- TouchDesignerFree tierNode based visual platform for building real-time interactive projectsderivative.ca
- Tracy ProfilerOpen sourceReal-time frame profiler for games and other appsgithub.com
- TradeCanvasOpen sourceFinancial charting library with candlesticks and indicators drawn using WebGL 2 or Canvas 2Dgithub.com
- Transformers.jsOpen sourceJavaScript machine learning library that runs models in the browser with WebGPUhuggingface.co
- TurtletoyFreeOnline editor and gallery for drawing generative art in JavaScript with a turtle APIturtletoy.net
- TWGLOpen sourceTiny helper library that makes the WebGL API less verbosetwgljs.org
- twgl.jsOpen sourceTiny WebGL helper library that cuts boilerplategithub.com
- Two.jsOpen sourceTwo dimensional drawing API for canvas, SVG and WebGL in modern browserstwo.js.org
- TypeGPUOpen sourceType-safe TypeScript toolkit for managing WebGPU resources and writing shadersdocs.swmansion.com
- Use.GPUOpen sourceDeclarative, reactive WebGPU runtime for building GPU-driven graphics and visualizationsusegpu.live
- VeejayOpen sourceLive video sampler and visual instrument with real-time effectsveejayhq.github.io
- VelloOpen sourceRust 2D vector renderer that uses wgpu and GPU computegithub.com
- VertexshaderartFreeOnline editor and gallery for art made with vertex shadersvertexshaderart.com
- Vienna WebGPU EngineOpen sourceEducational C++ game engine on WebGPU with native and browser backendsgithub.com
- VirtualMapperOpen sourceReal-time preview tool for planning projection mappinggithub.com
- VuoFree tierVisual programming environment for building live interactive mediavuo.org
- vvvvFree tierVisual and textual live programming environment for prototyping interactive media in .NETvvvv.org
- VysmoOpen sourceTree-shakable WebGL 2 library of 60 transitions with mesh and multi-pass supportgithub.com
- WebGL Developer ToolsOpen sourceKhronos helper modules for debugging and developing WebGL applicationsgithub.com
- WebGL GLSL EditorFreeVisual Studio Code extension adding GLSL language support for shader filesmarketplace.visualstudio.com
- WebGL PlaygroundOpen sourceEditor for writing JavaScript and GLSL shaders side by side with live resultsjessevdk.github.io
- WebGL ReportFreeWeb page showing which WebGL features and limits your browser supportswebglreport.com
- WebGL Texture TesterFreeTest page that loads every WebGL texture format to show what your device supportstoji.github.io
- WebGpGpu.tsOpen sourceWebGPU framework for running compute shaders in the browser or on a servergithub.com
- WebGPU Dev ExtensionOpen sourceBrowser extension for WebGPU debugging, memory tracking and validation diagnosticsgithub.com
- WebGPU InspectorOpen sourceInspection debugger for WebGPU, for tracing and examining GPU callsgithub.com
- WebGPU-C++Open sourceSingle-file C++ wrapper that makes the native WebGPU API feel idiomaticgithub.com
- webgpu-headersOpen sourceC headers for WebGPU shared by native implementationsgithub.com
- webgpu-utilsOpen sourceHelpers for buffer layouts, textures, mipmaps and bind groups in WebGPUgithub.com
- WebGPU.NETOpen sourceLow-level .NET bindings for the Emscripten WebGPU API, for browser-based .NET appsgithub.com
- WebGPUReconstructOpen sourceRecords WebGPU calls in the browser and replays them natively for debugginggithub.com
- WebLLMOpen sourceEngine that runs large language models in the browser, accelerated by WebGPUwebllm.mlc.ai
- WebRTXOpen sourceExperimental WebGPU extension that adds ray tracing through compute shadersgithub.com
- WESLOpen sourceCommunity extension of WGSL that adds imports, conditional compilation and moregithub.com
- wgpuOpen sourceCross-platform Rust graphics API based on WebGPU for native and web appsgithub.com
- wgpu-nativeOpen sourceNative C interface to the Rust wgpu WebGPU implementationgithub.com
- wgpu-profilerOpen sourceTimer-query profiler scopes for Rust apps that use wgpugithub.com
- wgsl_reflectOpen sourceJavaScript parser and reflection library for the WebGPU Shading Languagegithub.com
- WorldSeedOpen sourceTurns open geospatial data into exportable Three.js worlds with roads and GLB outputgithub.com
- xeokitOpen sourceWeb graphics SDK for viewing BIM and AEC models in the browserxeokit.io
- XODOpen sourceVisual programming environment for building microcontroller projectsxod.io
- ZdogOpen sourcePseudo 3D engine for canvas and SVG with flat, designer friendly shapeszzz.dog
- Zephyr3DOpen sourceTypeScript rendering engine for WebGL, WebGL2 and WebGPU with a web based editorzephyr3d.org
Paid picks
Well known paid tools for graphics and creative coding. They are not part of the free count, and a listing is not an endorsement.
- AxiDrawPaidPen plotter machines for drawing and writing from vector artworkaxidraw.com
- IsadoraPaidScene based media control software with a built-in projection mappertroikatronix.com
- KodeLifePaidReal-time GPU shader editor and live coding tool for graphics prototypinghexler.net
- MadMapperPaidVideo mapping and light mapping software for projectionsmadmapper.com
- Makey MakeyPaidInvention kit that turns everyday objects into touchpads and keys for your computermakeymakey.com
- MaxPaidVisual programming language for building audio, video and interactive mediacycling74.com
- MilluminPaidSoftware for creating and performing interactive audiovisual showsmillumin.com
- modul8PaidReal-time video mixing and compositing app for macOS VJsgaragecube.com
- PhidgetsPaidUSB sensors, controllers and input devices for connecting hardware to your computerphidgets.com
- Puck.jsPaidBluetooth microcontroller you program wirelessly in JavaScript for beacons and gadgetspuck-js.com
- Raspberry PiPaidSmall low-cost single-board computers for learning, making and creative projectsraspberrypi.org
- ResolumePaidVJ software and media server for mixing live video and effectsresolume.com
- ShaderToolPaidShader IDE for programmers and FX artists to build and test shadersstore.steampowered.com
- TeensyPaidUSB microcontroller development boards for projects, instruments and interactive hardwarepjrc.com
- UltraleapPaidHand tracking sensors and software that let people control computers with hand motionultraleap.com
- VDMXPaidReal-time video performance application for Macvidvox.net
- Verge3DPaidToolkit for turning Blender, 3ds Max and Maya scenes into interactive web 3Dsoft8soft.com
Questions about graphics and creative coding
What is creative coding?
Creative coding means writing code to make art, motion, sound or interactive work. p5.js, Processing style tools like py5, and node based apps like TouchDesigner are common starting points.
What are good WebGL libraries?
regl, OGL, twgl.js and luma.gl are small WebGL libraries. Three.js and Babylon.js are full 3D engines in the 3D and motion section.
Where can I learn and write GLSL shaders?
Shadertoy, GLSL Sandbox and glslEditor let you write shaders in the browser. LYGIA is a free library of shader functions.
This directory, including its selection, categories and descriptions, is © 2026 Jeffrey Hakim. You’re welcome to link to it. Please don’t copy or republish the list.
✦ Want more than free tools?
Let’s build your site in Framer
I design and build fast Framer sites with clean SEO and share previews that stand out. Tell me what you’re working on.
Contact Jeffrey

