Creative coding treats the computer not as a tool for problem-solving, but as a medium for artistic expression — where logic and aesthetics become one.
A Brief History
1960s
Computer Art Pioneers
Early plotter drawings by Georg Nees, Frieder Nake, and Vera Molnár. Mathematical equations rendered as line art. PlotterAlgorithms
1980s
Demo Scene & ASCII Art
The demoscene pushed hardware limits for visual spectacle. Real-time procedural graphics as cultural expression. AssemblyReal-time
1990s
Flash & Processing Origins
Macromedia Flash democratized interactive web art. Casey Reas and Ben Fry begin work that becomes Processing. FlashJava
2000s
openFrameworks & Communities
Processing released publicly. openFrameworks (Zach Lieberman) enables real-time C++ art. Communities form globally. ProcessingopenFrameworks
2010s
p5.js & Web Canvas
Lauren McCarthy creates p5.js — Processing for the web. Three.js, WebGL, and generative NFTs expand the field. p5.jsWebGL
Now
AI + Generative Systems
Machine learning, diffusion models, and live coding blur boundaries. Creative coding is now a global artistic practice. ML/AILiveCode
Code as Medium
In creative coding, the algorithm is the brush, the canvas is a framebuffer,
and the studio is a text editor. Unlike traditional programming that optimises for
correctness, creative coding embraces happy accidents, emergent patterns,
and the unexpected beauty of mathematical systems pushed to their limits.
Three fundamental forces drive generative aesthetics: mathematics gives
us perfect curves and infinite precision; randomness adds organic texture
and the illusion of nature; iteration reveals complexity
that no single mind could design.
Math → Beauty
Randomness → Texture
Iteration → Complexity
Generative Systems
Algorithmic Patterns Lab
Eight classic pattern-generating algorithms, each tuneable in real time. Every slider uses exponential lag-smoothing for fluid control.
Visual Thinking
Color & Composition Tools
Place geometric primitives on canvas, explore color harmonies, and get real-time compositional analysis.
Composition Analysis
Shapes placed0
Visual balance—
Color harmony—
Dominant hue—
Harmony Suggestions
Recently Used
Letters in Motion
Typography as Art
Three generators that treat letterforms as raw visual material — kinetic, spatial, and symbolic.
Controlled Chaos
Noise & Randomness
Custom implementations of six noise functions used in generative art. Tweak parameters live and test your knowledge with the identification quiz.
Perlin-style
Value Noise
Worley / Cellular
fBm
Domain Warp
Blue / Poisson
Noise Identification Quiz
Which noise type is shown below?
Live Demos
Interaction Patterns
Six classic creative-coding interaction archetypes. Click any tile to expand it — then play.
Trails
Magnets
Flocking
Gravity Wells
Spring Network
Ripple
Pioneers & Practitioners
Artists & Inspirations
Eight figures who shaped the field — from early plotter pioneers to contemporary generative artists.
Reference
Glossary
Key terms and concepts in creative coding, generative art, and algorithmic aesthetics.
Algorithm
A finite, deterministic sequence of instructions that transforms an input into a defined output. In creative coding, algorithms become generative engines — their logic is the art.
Attractor
A set of values toward which a dynamical system converges over time. Strange attractors (Lorenz, Rössler) trace infinitely complex, never-repeating paths and are icons of generative art.
Autonomous Agent
A simulated entity with its own local state, perception, and behavioral rules. Agents sense their environment and act independently, producing emergent collective behavior.
Boids
Craig Reynolds' 1986 flocking algorithm: three simple rules (separation, alignment, cohesion) applied to autonomous agents produce lifelike swarm behavior from no central control.
Cellular Automata
A grid of cells that evolve through discrete time steps according to local neighbor rules. Conway's Game of Life and Wolfram's 256 elementary CA rules are canonical examples.
Domain Warping
A noise technique where the input coordinates are displaced by another noise function before sampling. Produces organic, fluid distortions — pioneered in Inigo Quilez's shader work.
Emergent Behavior
Complex patterns arising from simple local rules, with no central coordination. The global pattern is not explicitly programmed — it arises spontaneously from interactions.
fBm (Fractional Brownian Motion)
Layered noise: multiple octaves of the same noise function at increasing frequencies and decreasing amplitudes, summed together. Produces natural textures like clouds, terrain, and turbulence.
Flow Field
A vector field assigning a direction to every point in space. Particles released into the field follow the locally sampled direction, tracing organic streamline paths through the field.
Generative Art
Art created via an autonomous system — an algorithm, process, or set of rules — that takes decisions with minimal human input at each step. The artist designs the system, not the output.
L-System
A parallel rewriting system invented by biologist Lindenmayer. A grammar of symbols and production rules expands iteratively into strings that can be interpreted as drawing commands, producing fractal plants and trees.
Lissajous Curve
The path traced by a point undergoing two independent sinusoidal oscillations at right angles. The shape depends on the frequency ratio and phase offset, producing figures from lines to complex knots.
Noise Function
A mathematical function producing smoothly varying pseudo-random values. Unlike raw randomness, noise is spatially coherent — neighboring samples are similar — making it ideal for organic textures and motion.
Parametric Design
Design driven by parameters rather than fixed values. Changing the parameters changes the output — everything is a relationship. This makes exploration, variation, and animation intrinsic to the process.
Perlin Noise
Ken Perlin's 1983 gradient noise algorithm, created for the film Tron. It generates smooth, natural-looking random textures by interpolating random gradients at lattice points. The basis of countless terrain generators.
Poisson Disk Sampling
A method for distributing points so that no two are closer than a minimum distance. Produces "blue noise" — uniform yet irregular distributions that mimic the distribution of photoreceptors in the eye.
Reaction-Diffusion
A system of coupled PDEs (Turing, 1952) modeling two chemical species diffusing and reacting. Produces leopard spots, coral patterns, and labyrinthine forms — complex biology from two simple equations.
Recursion
A function that calls itself with a smaller version of its own problem. In generative art, recursion produces self-similar, fractal structures: trees, ferns, and Sierpiński patterns.
Seed
The initial value given to a pseudo-random number generator. The same seed always produces the same sequence, enabling reproducible randomness — critical for generative art that should look different each run but be reproducible.
Truchet Tiles
Square tiles decorated with quarter-circle arcs, each rotated randomly 0° or 90°. First described by S. Truchet in 1704 and rediscovered for computer graphics. Simple local randomness, complex global patterns.
Vector Field
A function assigning a vector (magnitude and direction) to every point in space. In creative coding, sampling and following vector fields — often generated from noise — produces fluid, organic motion.
Voronoi Diagram
A partition of space into regions, each containing all points closest to one particular seed point. Named after Georgy Voronoy. Found throughout nature: giraffe patterns, cell structure, dragonfly wings.
Wave Function Collapse
A procedural generation algorithm inspired by quantum mechanics. Local tile-adjacency constraints propagate through a grid until every cell has a deterministic assignment, producing globally coherent patterns from local rules.
Creative Coding World · Built with Canvas2D + WebAudio · Zero dependencies