Playground
Things I build for fun.
Side projects where I try out game engines, computer vision and graphics. They all run in your browser, with nothing to install. The board games are best on a laptop; HandShape asks for your camera, and the video never leaves your device.
Game engine
Chess 3D
Full-rules chess against an alpha-beta engine at four strengths. Move generation is perft-verified, and you can pick your set: glass, metal, marble, lacquer and more.
ReactThree.jsWeb WorkerGame AI
Reversi 3D
Othello with a time-boxed search engine behind it. Discs flip in 3D; play the computer or pass & play.
ReactThree.jsSearchSolved game
Tic-Tac-Toe 3D
An exact solver behind four levels: random, tactical, a solver that blunders a quarter of the time, and one you cannot beat.
ReactThree.jsMinimaxComputer vision
HandShape 3D
Draw 3D shapes in the air: your webcam tracks 21 points per hand and pinch-and-drag becomes a drawing tool. Video stays on your device.
MediaPipeThree.jsReactShaders
Antigravity 3D
30,000 particles in custom GLSL shaders that morph between shapes and scatter away from your cursor.
GLSLReact Three FiberGSAP2D physics
Physics Zero-G
Photo cards floating in zero gravity. Grab, throw and sling them around, with a Web Audio V8 soundtrack.
Matter.jsWeb AudioVanilla JSScroll animation
Scroll Canvas
A 240-frame cinematic sequence scrubbed by scroll on a canvas, with sub-frame interpolation for smooth 120 Hz playback.
CanvasGSAP ScrollTriggerVanilla JS