$ ls


$ cat playground.txt


A page for various embedded web experiments, written in various tools like p5.js.


sketch link

Boids! Based on the original model by Craig Reynolds, written in the p5.js editor, and inspired by the boids found in Xen in the original Half Life.

Left click and drag the mouse to create new boids on the cursor!

3d bouncing balls

sketch link

An extension of a lab I wrote up and led for my ACM student chapter, the original document of which can be found here on GitHub gists. This version simulates the bouncing balls in 3D, with some playing around with ambient materials and ambient/point lights.

Left click and drag the mouse to spawn more balls, and the point light in the scene is centered on mouse X and mouse Y on the Z axis.


sketch link

A simple implementation of minesweeper without any pre-rendered graphics (all the shapes are drawn by p5). Click to uncover squares, right click to flag squares, and click the reset button to reset the board.

simple web theremin

sketch link

A simple web “theremin” written in the p5.js editor and using the p5.sound library. Set up with a simple square wave oscillator, low pass filter, and reverb effect chained together.

Left click and drag the mouse to play, mouse X is mapped to the oscillator frequency (between ranges 100 and 500), where mouse Y is mapped to the low pass filter frequency.

random walk

sketch link

Another short experiment with modeling particles on a random walk. Particles “die” when leaving the frame, and are culled from the list of particles. Use the mouse to click or drag to spawn new particles.