Playground

Things I built
to understand them.

Small, self-contained visualizers. No build step, no dependencies — each one is a single HTML file you can open anywhere.

Bitwise lab

Turn text into ASCII bytes and toggle individual bits, then watch De Morgan’s laws hold as switches, truth tables, and eight parallel bits.

asciibinaryboolean algebra
Open →

Sorting visualizer

Bubble, insertion, selection, merge and quicksort, played back operation by operation with comparison and swap counts on five input distributions.

algorithmscomplexityanimation
Open →

Skyhop

A 3D platformer in a single HTML file. Hop across a floating path, collect gems, reach the flag.

gamethree.jsphysics
Open →

Float lab

Type a decimal and see the sign, exponent and mantissa a computer actually stores, the exact value behind 0.1, and the gap to the neighbouring floats in 32 and 64 bits.

ieee 754binaryprecision
Open →

Sound lab

Shape a beep with sliders, replay every sound from Skyhop, hear each oscillator waveform in slow motion, and build square and sawtooth waves out of overtones.

web audiosynthesiswaveforms
Open →

Trig lab

Drag a point around the unit circle and watch sin, cos and tan as lengths, waves and code, plus the radians, divide by zero and floating point traps that catch programmers.

trigonometrygeometrymath
Open →