Lab 01 · 2D canvas

Flux

Move your cursor. The particles carve the field around you.

Scroll

What you are looking at

A continuous vector field, built from three layers of phase-shifted sine waves, steers a swarm of particles. Each frame, every particle moves along the field, and the canvas is never fully cleared: a translucent veil leaves trails. Your cursor adds a local repulsion force.

The whole thing fits in about 120 lines of vanilla JavaScript, no WebGL, no library, and it honours prefers-reduced-motion: if you prefer calm interfaces, the background stays a simple CSS gradient nebula.

Read the full anatomy of the code