programmatic graphics_

Visuals made by code, not by an image model. Every pixel below is geometry, noise functions, and a palette — deterministic, editable, re-renderable at any resolution.

svg · html · zero dependencies

Architecture diagram

open full ↗

A self-contained HTML file with inline SVG. The diagram's subject is the pipeline that made it. Vector — zoom forever, edit any label in a text editor.

p5.js · generative art · live

Flow-field particles

open full ↗

Thousands of particles following a domain-warped Perlin noise field. Seeded — the same seed always draws the same painting. Try the seed buttons, then press s in the full page to export a PNG.

pure svg · data viz · no javascript

Dashboard

open full ↗

Charts, donut, and stat tiles drawn as raw SVG — no chart library, no JS. Numbers are illustrative; the point is that data viz can be one readable text file.

p5.js · palette sampled from a photo

Nightfall flow field

open full ↗

Palette extracted programmatically from background.jpg — a rainy night with the Coliseum: near-black navy (hue 213-228, brightness capped at 31), one ground-level uplight. The canvas uses the photo's darkest navy; particles paint its complement (ember gold) and rise from a virtual light source at the bottom edge, thinning into the ink above — the same light direction as the statue's wet stone.

p5.js · living wallpaper · photo + light

Nightfall, alive

open full ↗

The photo itself is the backdrop. Particles are composited with SCREEN blending — they behave as light, not paint — and the trail layer fades toward clear every frame, so the painting breathes forever instead of burying the image. Best viewed full-screen.