Creative Code & Generative Systems
p5.js, GLSL, Three.js, TouchDesigner - build living visual systems, not static files, and prove each one with a running artifact.
0 of 25 skills marked done · saved on this device
Start where the work stops being trivial and stops being impossible. That's your tier — jump in below.
Foundation tier
Know it, name it, reproduce it. Lowest cognitive load - worked examples first.
L3 · Basic Application
4 activities
Creative Coding Foundations (Processing)
First visible artifact - the on-ramp that makes coordinate space, loops, state, and randomness real instead of abstract.
Walk away with: Public p5.js editor link + a notes block naming what setup vs draw do and where the origin (...
Recreate the official p5.js 'Get Started' bouncing/animated sketch in the web editor, then annotate every line with a comment explaining setup(), draw(), and the coordinate system.
Free p5.js Web Editor only; under 40 lines; no copy-paste without a comment per block.
Public p5.js editor link + a notes block naming what setup vs draw do and where the origin (0,0) sits.
Follow one Coding Train beginner video (e.g. mouse interaction or simple motion) and rebuild it from scratch without scrubbing back, then write 3 sentences on what broke.
Time-box 45 min; rebuild from memory after one watch-through; free tools only.
Working sketch + a short 'what broke and how I fixed it' debugging log.
Build a generative poster sketch: a 1080x1350 canvas using shapes, a color palette, and randomness seeded so it is reproducible. Export 3 stills.
One fixed random seed for reproducibility; 3-5 tunable parameters at the top of the file; export PNG.
3 exported stills + the sketch with a parameter block and the seed documented.
Port the same poster sketch to Processing (Java mode) to feel the difference between p5.js and Processing, and note one thing each does better.
Free Processing IDE; keep visual output equivalent; under 60 lines.
Processing .pde file + side-by-side screenshot vs the p5.js version + a 2-line comparison note.
Working tier
Apply it to your own project without a guide; debug under constraint.
L4 · Real-World Use
3 activities
Algorithmic Drawing (Generative Art)
Loops, randomness, and math become a visual language - the leap from drawing-by-hand to systems that draw for you.
Walk away with: Exported still/GIF + a param table showing 3 distinct looks from the same code.
Build a flow-field sketch: thousands of particles steered by Perlin noise, leaving trails. Recreate the Coding Train flow-field study, then change the noise scale and step size and observe.
p5.js; expose noiseScale, particleCount, and stepLength as top-of-file params; free tools.
Exported still/GIF + a param table showing 3 distinct looks from the same code.
Design an original generative grid/tiling system (e.g. Truchet tiles or recursive subdivision) that produces a different composition on each run, with deliberate aesthetic intent stated up front.
Original (not a tutorial copy); write a one-paragraph artistic-intent statement before coding; reproducible via seed.
Original artifact + decision log: intent statement, the rules you chose, and what you rejected.
Publish the generative system to OpenProcessing with the code public, then write the rule-set as a short 'how this works' so another person could reproduce variants.
Code must be forkable; explanation under 200 words; free hosting only.
Public OpenProcessing link with forkable source + a reproducible rule-set writeup.
L5 · Solid Control
3 activities
Generative Text & Language Art
Rule-based and model-driven text systems - poetry bots and narrative generators built on grammars, not vibes.
Walk away with: Repo/sketch with grammar file + 10 distinct generated outputs pasted into the readme.
Build a context-free-grammar text generator (Tracery-style): define rules in JSON and expand them into generated poems or quips, with at least 3 nested rule levels.
Pure JS/p5.js, no external LLM; grammar in a separate data file; reproducible from a seed.
Repo/sketch with grammar file + 10 distinct generated outputs pasted into the readme.
Repair a brittle generator: take a grammar that produces grammatically broken or repetitive output and fix article/plural agreement and add weighted rule selection.
Document the before/after failure cases; keep changes minimal and explained.
Before/after output samples + notes on the 3 specific failures you fixed.
Add an evaluation pass: write a simple filter/scorer that rejects low-quality outputs (too short, repeated tokens) so the bot only surfaces its best lines - treating quality as a system, not luck.
Define explicit accept/reject criteria; no manual cherry-picking of outputs.
Scorer code + a log showing rejected vs accepted samples and the criteria.
L5 · Solid Control
3 activities
Generative Typography & Text Art
Type as a programmable material - point manipulation, text-on-path, and procedural letterforms.
Walk away with: Animated sketch + exported GIF showing the dissolve/reform cycle.
Use p5.js textToPoints() to convert a word into points, then displace/animate those points with noise so the letterform dissolves and reforms.
Load a free/open font; keep word legible at rest; expose displacement amount as a param.
Animated sketch + exported GIF showing the dissolve/reform cycle.
Build a procedural poster layout system: feed in a headline + body string and have code lay out type on a grid with generative color/scale variation, producing 5 unique posters from one input.
Original layout logic; 1080x1350; reproducible via seed; free tools.
5 exported posters + a decision log on the layout rules and constraints.
Repair a kerning/overflow bug: take a generative type sketch where long strings overflow the canvas and fix wrapping + auto-fit sizing under constraint.
Test with 3 string lengths (short/medium/long); document the fix.
Before/after screenshots at all 3 lengths + notes on the wrapping logic.
L5 · Solid Control
3 activities
Node-Based Visual Programming (TouchDesigner)
Wire complex realtime systems with little typed code - the installation/VJ workhorse for rapid multimedia prototyping.
Walk away with: Saved .toe file + a screenshot of the labeled node network + a screen-capture of the output.
Install TouchDesigner (free non-commercial) and build the canonical first network: a Noise TOP feeding a Transform and a Level, animated by an LFO CHOP, output full-screen.
Free non-commercial license; follow the official docs/curriculum; keep the network tidy and labeled.
Saved .toe file + a screenshot of the labeled node network + a screen-capture of the output.
Build an audio-reactive patch: route an Audio Device In CHOP through an Audio Spectrum CHOP to drive a visual parameter, so the visuals move with the music.
Map at least 2 audio bands to 2 distinct visual params; document the mapping intent.
Demo video with audible audio + a mapping worksheet (which band drives what and why).
Debug and optimize a laggy network: profile a patch that drops frames, find the expensive operator, and cut cook cost (resolution, selective cooking) to hit 60fps.
Record FPS before/after; change one thing at a time and log impact.
Before/after FPS readout + a notes list of each optimization and its effect.
L5 · Solid Control
3 activities
Physical Computing (Microcontrollers)
Code meets the physical world - sensors in, lights/motors out, the basis of every interactive object.
Walk away with: Photo of the circuit + the sketch + a short clip of the LED responding to the sensor.
Wire and program a potentiometer (or photoresistor) to control an LED's brightness via PWM on an Arduino, reading the sensor over Serial.
Use the official Arduino docs; breadboard only; print sensor values to Serial Monitor.
Photo of the circuit + the sketch + a short clip of the LED responding to the sensor.
Bridge hardware to visuals: send sensor values from Arduino over Serial into a p5.js sketch (Web Serial) so a physical knob drives an on-screen generative parameter.
Free tools; handle the case where the port is disconnected without crashing.
Demo video of the knob driving the sketch + code for both sides + a note on the disconnect handling.
Repair a noisy/flickering sensor reading: add debouncing/smoothing (moving average) and document the before/after stability.
Compare raw vs smoothed on the same Serial plot; keep latency acceptable.
Serial-plot screenshots raw vs smoothed + notes on the filter and latency tradeoff.
L5 · Solid Control
3 activities
Web Creative Coding (WebGL & JS)
Ship art that runs anywhere with a URL - no install, the most shareable creative-code surface.
Walk away with: Deployed page (free static host) + the commented source showing the shader pipeline.
Work through MDN's WebGL tutorial to draw and animate a colored, rotating 2D shape in raw WebGL (no library), understanding the vertex+fragment shader handshake.
Raw WebGL via MDN; no Three.js; comment the shader-attribute wiring.
Deployed page (free static host) + the commented source showing the shader pipeline.
Read the 'WebGPU in production' issue, then port one small WebGL effect to a WebGPU/WGSL equivalent (or run the MDN WebGPU compute sample), noting where the APIs differ.
Acknowledge WebGPU is the emerging path; gate behind a WebGL2 fallback; free tools.
Deployed page that runs WebGPU when available and falls back to WebGL + a short API-difference note.
Repair a resize/aspect-ratio bug: take a WebGL canvas sketch that stretches on window resize and fix the viewport + projection so it stays correct across sizes.
Test at 3 aspect ratios incl. mobile portrait; no library to mask the bug.
Before/after screenshots at 3 sizes + notes on the viewport/projection fix.
Advanced tier
Teach it, template it, ship it under real constraints.
L6 · Advanced Control
2 activities
Computer Vision for Interactive Art
Turn a camera into an input device - faces, bodies, and gestures driving art in installations and performance.
Walk away with: Demo video + sketch source + the privacy/consent note for an installation context.
Build a webcam motion-detector in p5.js: compare consecutive frames (pixel diff) and trigger a visual response where motion is detected, with a tunable threshold.
Free, browser-only; explicit privacy note (camera stays local); expose threshold as a param.
Demo video + sketch source + the privacy/consent note for an installation context.
Use a free body/hand-pose model (e.g. ml5.js / MediaPipe in-browser) to drive a visual: a tracked hand position moves a generative element on screen.
Free in-browser model; handle no-detection gracefully; document latency.
Demo video showing tracking + a checklist others can reuse to calibrate it.
L6 · Advanced Control
3 activities
Data Visualization Programming
Translate datasets into honest, aesthetic visuals - clarity and craft, not chart-junk.
Walk away with: Deployed page + linked dataset source + a note on the scale/encoding choices.
Build a custom interactive chart in D3.js from a real open dataset (CSV/JSON): bind data to SVG, add axes/scales, and a hover tooltip.
Use D3 v7 from d3js.org; real data with a cited source; chart must read correctly without color alone.
Deployed page + linked dataset source + a note on the scale/encoding choices.
Write a reusable, documented chart component/template (e.g. a configurable bar or line module) so a non-author can drop in new data and get a correct chart.
Templatize config (margins, accessors); include a README with a worked example.
Forkable repo with the reusable module + README + 2 different datasets rendered from it.
Repair a misleading chart: take a viz with a truncated y-axis or bad aggregation, fix the distortion, and write up why the original misled.
Keep the same dataset; document the specific distortion and the fix.
Before/after charts + a short integrity note explaining the correction.
L6 · Advanced Control
2 activities
Game Engine Scripting for Art
Use Unity/Unreal as an art tool - scripting expressive, non-gameplay experiences with real-time rendering.
Walk away with: Built/playable scene (or capture) + the script + a note on the artistic intent.
In a free Unity (or Godot) project, script a generative behavior: spawn objects via code that drift/respond to time, forming an evolving non-gameplay scene.
Free personal/edition license; behavior driven by script, not just the editor; keep scope to one scene.
Built/playable scene (or capture) + the script + a note on the artistic intent.
Document a reusable interaction template: a small script + setup steps another artist could drop into a fresh project to get the same effect.
Engine-version noted; steps verified on a clean project; free tools.
Repo/gist with the script + a step-by-step setup checklist + a screenshot of it working.
L6 · Advanced Control
3 activities
Interactive 3D Graphics (OpenGL/Three.js)
Code navigable 3D scenes - transforms, cameras, lights, and input, the backbone of web 3D.
Walk away with: Deployed interactive scene + commented source.
Follow the Three.js manual to build your first scene: a lit, textured rotating mesh with OrbitControls so the user can navigate.
Use the official manual/docs; free static host; comment the scene/camera/renderer setup.
Deployed interactive scene + commented source.
Build an original interactive 3D artifact: instanced geometry (hundreds+ objects) arranged by an algorithm, with a custom material and mouse-driven camera.
Use InstancedMesh for perf; original composition; keep a stable framerate on a laptop.
Deployed scene + decision log: layout algorithm, why instancing, perf notes.
Make it teachable: write a short tutorial + starter file that takes someone from empty page to your scene's core technique in under 20 minutes.
Starter file forkable; tutorial tested on someone unfamiliar (or self-test cold).
Forkable starter repo + the written tutorial.
L6 · Advanced Control
2 activities
Networked Art & IoT Projects
Connect devices and remote participants into one artwork - art that lives across a network.
Walk away with: Deployed multi-client demo + a clip of two windows syncing + a note on the reconnect logic.
Build a shared-canvas web app: two browsers connect over WebSocket (free tier) and both see each other's strokes/parameters live.
Free hosting/WS tier; handle reconnect; cap message rate to avoid flooding.
Deployed multi-client demo + a clip of two windows syncing + a note on the reconnect logic.
Connect a microcontroller to the network: have an ESP32/Arduino publish a sensor value to a free broker (MQTT) that a web visual subscribes to.
Free broker; document the topic schema; fail safe if the broker is unreachable.
Diagram of the topology + demo video + the topic/schema doc.
L6 · Advanced Control
2 activities
Parametric Design (Algorithmic CAD)
Drive geometry by parameters and rules - the computational-design mindset for adjustable, generative form.
Walk away with: Saved .blend + a screenshot of the node graph + 3 renders from different parameter sets.
Model a parametric form in Blender Geometry Nodes (free): a structure whose count/spacing/twist are driven by node parameters, so sliders reshape it.
Free Blender; at least 3 exposed parameters; document the node graph intent.
Saved .blend + a screenshot of the node graph + 3 renders from different parameter sets.
Recreate the same parametric idea in code (p5.js or Three.js) to prove the rule transfers across tools, and note where node-based vs code-based each wins.
Equivalent visual result; reproducible params; free tools.
Code artifact + side-by-side with the Blender version + a tradeoff note.
L7 · Expert
2 activities
Augmented Reality Development (AR)
Anchor digital content to the real world via web/mobile - tracking, placement, and interaction.
Walk away with: Deployed AR page + a screen-recording on-device of placing the object + notes on hit-test re...
Build a WebXR AR scene (Three.js + WebXR) that hit-tests a real surface and places a generative 3D object the user can re-place by tapping.
WebXR over HTTPS on a real device; graceful message if AR unsupported; free tools.
Deployed AR page + a screen-recording on-device of placing the object + notes on hit-test reliability.
Write a production case study: ship the AR piece as a real shareable URL and document the constraints (lighting, tracking drift, device support) and the tradeoffs you made.
Real deployment; honest limitations section; measured on 2+ devices.
Live URL + case study with constraints, tradeoffs, and per-device results.
L7 · Expert
2 activities
Live Coding Visuals
Improvise evolving graphics in real time - performance coding synced to sound or audience.
Walk away with: Recorded 2-min take + the final Hydra code snippet pasted in notes.
Learn Hydra: from the live editor, build a layered audio-reactive patch (osc + modulate + feedback) that reacts to mic input, then record a 2-minute improvisation.
Free Hydra browser editor; mic-reactive; one continuous take (no edits).
Recorded 2-min take + the final Hydra code snippet pasted in notes.
Ship a performance case study: do a short live set (even solo to a recording), document your 'safe' starting patches, the transitions you rehearsed, and what you'd cut under pressure.
Real-time only (no pre-render); document fail-safes; honest post-mortem.
Performance capture + a set-list/patch sheet + a post-mortem on what held up live.
L7 · Expert
2 activities
Procedural Geometry & Modeling
Generate 3D form by algorithm - fractals, L-systems, and meshes too complex to model by hand.
Walk away with: Deployed/rendered structure + the L-system grammar + renders at 3 iteration depths.
Implement an L-system in code that grows a 3D plant/branch structure (Three.js or Blender scripting), with rules and iteration depth as parameters.
Original rule-set; cap iteration depth to stay performant; document the grammar.
Deployed/rendered structure + the L-system grammar + renders at 3 iteration depths.
Ship a production-grade procedural mesh as a case study: generate geometry, export it (glTF), and document poly-count/perf tradeoffs and where the algorithm broke.
Exportable, reusable output; measured poly count; honest constraints section.
Exported glTF + case study with tradeoffs, perf numbers, and failure notes.
L7 · Expert
3 activities
Shader Programming (GLSL)
Compute per-pixel on the GPU - the engine behind real-time effects, materials, and generative motion.
Walk away with: Public Shadertoy link to your original shader + notes mapping each technique to a Book of Sh...
Work through The Book of Shaders chapters 1-6 and recreate the shaping-function and color exercises live in Shadertoy, then build one original gradient/pattern shader.
GLSL fragment shaders only; original final shader (not a copy); free tools.
Public Shadertoy link to your original shader + notes mapping each technique to a Book of Shaders chapter.
Write a ShaderMaterial in Three.js (custom vertex+fragment) that animates a mesh's surface over time using a uniform, proving you can wire GLSL into a real scene.
Custom GLSL (not built-in materials); time uniform driven from JS; deployed.
Deployed Three.js page + the GLSL source + a note on the uniform wiring.
Ship a production case study: a reusable shader effect (e.g. a configurable noise/distortion) documented with its uniforms, perf cost, and a fallback, so others can drop it in.
Reusable + documented uniforms; measured perf; honest constraints.
Forkable shader + case study: uniforms, perf numbers, tradeoffs.
L7 · Expert
3 activities
Simulation & Emergent Systems
Code simple rules that produce complex behavior - flocking, automata, fluids, the heart of generative life.
Walk away with: Live sketch + a short clip showing how changing each weight changes the flock.
Implement Reynolds boids flocking from The Nature of Code (separation/alignment/cohesion) in p5.js with the three weights exposed as sliders.
Original implementation following the book; sliders for the 3 forces; reproducible seed.
Live sketch + a short clip showing how changing each weight changes the flock.
Build a second emergent system (Conway's Game of Life or a reaction-diffusion shader) and write up the rule-to-behavior relationship - why these rules give that pattern.
Different class of system than the boids; document the ruleset; free tools.
Live artifact + a written rule-to-emergence explanation.
Ship a production case study: take one simulation to a stable, performant interactive piece with tuned constraints (particle cap, timestep) and document the tradeoffs.
Stable framerate under load; documented timestep/caps; honest limits.
Deployed piece + case study with perf numbers and the stability tradeoffs.
Frontier tier
Fuse across domains and extend the field. Earned, not entered.
L8 · Cross-Domain Mastery
1 activity
C++ Creative Coding (openFrameworks)
Drop to C++ for performance the browser can't give - high-throughput multimedia with low-level control.
Walk away with: Compiling oF project + a benchmark table (oF vs p5.js particle counts) + the port notes.
Requires solid C++ (build systems, memory, pointers) plus prior creative-coding experience in p5.js/Processing - do those ladders first.
Install openFrameworks, build an example, then port one of your earlier p5.js sketches (e.g. the flow field) to oF and benchmark particle counts the browser couldn't handle.
Free oF; document the build setup; measure max particles at 60fps vs the JS version.
Compiling oF project + a benchmark table (oF vs p5.js particle counts) + the port notes.
L8 · Cross-Domain Mastery
1 activity
Custom Creative Tool Development
Build the tool, not just the artwork - libraries/plugins that extend what other artists can make.
Walk away with: Published/forkable package + docs + 2 demos built on the API.
Requires advanced programming plus deep knowledge of the target creative field - you must have shipped enough art to know what's missing before you build a tool for it.
Package a reusable creative-coding library: extract a generative technique you've built into a documented, installable module (npm or a forkable repo) with examples and an API.
Real install path + README + at least 2 example sketches using it; semantic versioning.
Published/forkable package + docs + 2 demos built on the API.
L8 · Cross-Domain Mastery
1 activity
Interactive Installation Development
The software backbone of physical installations - sensors in, displays/sound/actuators out, running unattended.
Walk away with: Demo video of the running installation + a setup diagram + calibration and run-of-show notes...
Requires physical-computing and creative-coding experience together - build the microcontroller and TouchDesigner/code ladders first; installations fail on integration, not on any single piece.
Build a sensor-reactive installation prototype end to end: a sensor (camera or microcontroller) drives a TouchDesigner or web visual, with a calibration step and a written run-of-show.
Must survive an unattended 30-min run; document space/calibration/latency/safety per the installation checklist.
Demo video of the running installation + a setup diagram + calibration and run-of-show notes.
L8 · Cross-Domain Mastery
1 activity
Machine Learning for Creative Applications
ML as a controlled creative material - dataset, license, and evaluation literacy, not 'use AI'.
Walk away with: Working demo + a data/model card: dataset provenance, license, eval metrics, and failure mod...
Requires programming proficiency plus basic ML concepts. The bar here is data/license/evaluation literacy - building a controlled system, not calling a generation API.
Build a controlled creative ML pipeline in the browser with ml5.js: train a tiny model on YOUR own labeled data (e.g. pose-to-sound or sketch classifier) and document the dataset source, license, and an evaluation of where it fails.
You must own/clear the training data and state its license; include an explicit eval (accuracy + failure cases); free in-browser tools.
Working demo + a data/model card: dataset provenance, license, eval metrics, and failure modes.
L8 · Cross-Domain Mastery
1 activity
Robotics & Kinetic Art Programming
Program motion in physical space - drawing machines and moving sculptures merging mechanics with code.
Walk away with: Video of the machine drawing + a physical output + the coordinate-feed code + a safety/limit...
Requires physical computing plus basic mechanics. Moving hardware can injure people/itself - do the microcontroller ladder and understand your motors/limits first.
Build a 2-axis drawing machine (plotter) driven by stepper/servo motors from an Arduino, fed coordinates from a generative sketch so the machine draws your algorithm on paper.
Soft/physical limits to prevent over-travel; e-stop or power-cut plan; document the motion/safety setup.
Video of the machine drawing + a physical output + the coordinate-feed code + a safety/limits note.
L8 · Cross-Domain Mastery
1 activity
Virtual Reality Development (VR)
Build immersive VR with code - hardware, 3D interaction, and the performance budget that protects presence.
Walk away with: Deployed VR page + capture/recording + a performance + comfort writeup.
Requires 3D graphics programming plus understanding of VR hardware. Frame-rate drops break presence and cause nausea - the Three.js/3D ladder is a hard prerequisite.
Build a WebXR VR scene (Three.js + WebXR) the user can look around and interact with via controller, holding a stable framerate, with a comfort consideration (no forced motion).
WebXR over HTTPS on a real headset or emulator; budget for 72/90fps; comfort note documented.
Deployed VR page + capture/recording + a performance + comfort writeup.
L9 · Visionary
1 activity
Generative Image Models (GANs & Diffusion)
The frontier - GANs/diffusion for novel imagery, demanding model, data, license, and evaluation rigor to be a contribution, not a gimmick.
Walk away with: Public repo: training code, model card, sample outputs, and an evaluation section documentin...
Requires ML fundamentals + image-processing knowledge, and ideally the ML-for-creative-applications ladder first. Visionary-level: the goal is an original method/tool/body of work, with full data-provenance and license discipline - not prompting a hosted model.
Train or fine-tune a small open diffusion/GAN model on a dataset you have the rights to, then publish an open artifact: the code, a model card (data provenance, license, intended use, limitations), and an honest evaluation of outputs.
Cleared/owned training data with explicit license; reproducible training script; model card + eval are mandatory; open-source the result.
Public repo: training code, model card, sample outputs, and an evaluation section documenting strengths and failure modes.
Everything Here Opens. No Cost to You.
30 curated, free-to-open references. Filter by what you need.
Canonical API reference - shape, color, transforms, math/noise, 3D, shaders, events.
p5js.org/referenceFull API for core, addons, and TSL (Three.js Shading Language).
threejs.org/docsFundamentals tutorials - scene/camera/renderer, geometry, materials, lights.
threejs.org/manualFree step-by-step GLSL fragment-shader guide by Patricio Gonzalez Vivo & Jen Lowe.
thebookofshaders.comEmerging high-end browser GPU path - pipelines, WGSL, render and compute.
developer.mozilla.org/en-US/docs/Web/API/WebGPU_APIRaw WebGL baseline - context, shaders, textures, lighting, animation.
developer.mozilla.org/en-US/docs/Web/API/WebGL_API/TutorialOfficial Derivative wiki - operators, Python, curriculum, licensing.
docs.derivative.caC++ creative-coding toolkit core + addon API reference.
openframeworks.cc/documentationZero-install browser IDE - write, run, share p5.js sketches instantly.
editor.p5js.orgFree, open-source sketchbook IDE for Java-based creative coding.
processing.orgIn-browser GLSL fragment-shader editor and community gallery.
shadertoy.comFree browser live-coding video synth for performance visuals.
hydra.ojack.xyzBrowser-based scene editor for prototyping Three.js scenes.
threejs.org/editorOpen-source C++ toolkit for high-performance multimedia apps.
openframeworks.ccFree toolchain and reference for microcontroller physical computing.
docs.arduino.ccFree 3D suite - modeling, geometry nodes, simulation, render.
blender.orgDaniel Shiffman's free p5.js / Processing tutorials and coding challenges.
thecodingtrain.comFree CC-licensed book - forces, agents, cellular automata, fractals, physics.
natureofcode.comFree articles teaching raw WebGL from first principles.
webglfundamentals.orgFree intro drawing/animation course on a Processing-style JS API.
khanacademy.org/computing/computer-programmingCurated list of frameworks, tools, courses, math, and inspiration.
github.com/terkelg/awesome-creative-codingActive sketch-sharing and critique community across tools.
reddit.com/r/creativecodingGenerative/algorithmic art showcase and technique discussion.
reddit.com/r/generativeGallery to publish, browse, and fork p5.js/Processing sketches.
openprocessing.orgRead and fork community shaders to learn GLSL by example.
shadertoy.com/browseOfficial Derivative forum for TouchDesigner help and patches.
forum.derivative.caThe emerging W3C browser GPU standard - device, pipelines, WGSL.
developer.mozilla.org/en-US/docs/Web/API/WebGPU_APIOpenGL ES 2.0-based browser 3D rendering baseline.
developer.mozilla.org/en-US/docs/Web/API/WebGL_APIW3C Immersive Web standard + samples for browser AR/VR, no install.
immersiveweb.devNode-based shading abstraction targeting both WebGL and WebGPU.
threejs.org/docs/#api/en/Three.js-Shading-LanguageKeep your progress
Create a free account to sync completed skills across devices. The library stays free, and you can keep learning without one.
We couldn't request a link. Try again in a moment.
Check your inbox
If that address can receive email, a sign-in link is on the way. Open it to sync your progress.