Colorful fluid toy
I built Circus Fluid in the summer of 2011. At its core, it's a 2D wave simulator.
Circus fluid works by having a 2D grid of springs that each represents the depth of any given pixel. Each spring pulls and pushes with those adjacent to itself.
So when a force is applied to any given pixel, the force propagates outward to other springs during each timestep.
The coloring of each pixel is somewhat arbitrary. The height determines the brightness, and the hue is the "velocity" of each spring feeding into a sine function.
If you have Java installed, you can view and play with the Circus Fluid applet at OpenProcessing.
Otherwise, you can also view the Circus Fluid's source code at the same website.