Cabinet 01
Splashery
An interactive Gaussian splat playground that runs entirely in the browser.
Pick a toy, a real captured object or one generated from a seed. Spin it, poke it, blow on it, splash paint on it, drop it, watch it fall apart and come back. Make your own, and share it as a link, an embed, a GIF or a video. The effects run on the GPU for every splat, every frame.
One of its shelves is an arcade: games made of splats. Each has a switch between 2D and 3D, and the switch changes the view and nothing else. The same game goes on under the same rules. The view switch at the top of this page is borrowed from it.
My part: I defined the project’s vision and its toy categories, refined the interaction design through hands-on testing, and contributed mathematical recipes.
- Runs on
- WebGPU, with a WebGL2 fallback
- Made of
- Static files and ES modules: no build step, no framework, no server
- Toys
- Captured scans of up to 450,000 splats, and seeded recipes that rebuild the same toy
- Arcade
- A labs shelf: it shows when the address ends in
?labs=1
-
Shardball
A paddle, a ball and a wall of bricks. Every brick that breaks shatters into pieces that fall, bounce and fade.
2D The classic flat board.
3D The board tips back into a table you look along, or its bricks spread over a dome and the ball bounces in three dimensions.
-
Longtail
A string of glass beads crawls from tile to tile. Each berry it eats makes it longer, and running into itself ends the game.
2D A cube laid flat as a cross of six faces. Leave one edge and you come back in where that edge meets once folded.
3D The faces swing up and close into a cube, round out into a planet, or roll into a ring.
-
Grain Garden
A falling-sand box where every grain is a splat. Sand, water, oil, fire, seeds and stone each follow one simple rule, sixty times a second.
2D The box face on. You paint through its whole depth.
3D The box tips round, grains and all, still running by the same rules.
-
Page Breaker
Shardball whose bricks are the words and pictures of your own page. Open a PDF or a photo; a word that breaks falls apart into pieces of its letters.
2D The page as a flat board. Each page of a PDF is a level.
3D The same page as a table or a dome. The file never leaves your device.
-
Strata
Stone shapes fall down a square shaft. Fill a whole layer to clear it: its stones crumble into rubble, and everything above drops into its place.
2D The side view, looking straight in from the front.
3D Looking down into the well from above its rim. Some of its stones, a tripod and two screws among them, only work in three dimensions.
-
Volley Table
A two-paddle rally against the computer. Where the ball meets the paddle sets its angle, and a paddle moving as it hits puts spin on it. First to seven.
2D The table from straight above.
3D The table tilts toward you, the camera low behind your paddle.
-
Stone Belt
A rock-blasting game whose rocks have the shapes of real asteroids, Bennu, Itokawa and Eros among them, from NASA’s public-domain models. A hit splits a big rock in two.
2D The field from straight above. It wraps round at its edges.
3D The camera drops in behind your ship and follows it.
-
Soft Landing
A lander on real ground: elevation from NASA’s public-domain maps of the Moon and Mars. Come down slow, upright and on a level spot, or the lander breaks apart.
2D A slice straight through the real ground.
3D The camera rises and the whole patch of terrain shows around the slice.
-
Night Owl Pinball
A steel ball on a sloped table, moved by a rigid-body engine. The flippers are solid paddles, so a moving flipper hits harder than a still one.
2D The table from straight above.
3D From the player’s end, looking up the slope, as you stand at a real machine.
-
Cast a Shadow
A carved block hangs between a lamp and a wall. Turn it until its shadow matches the outline drawn there. Most turns show a jumble.
2D Only the wall, as if you stood at the lamp: you turn the block by its shadow alone.
3D From the side, where the lamp, the block and the wall all show.
-
Photo Dash
A run across your own photo. The line where its sky meets its ground becomes a track of planks; a ball rolls along it, and you jump the gaps.
2D The photo face on.
3D The photo rises into a relief, bright parts nearer, and the ball rolls the same track.
-
Note Rider
A song’s melody comes down a three-lane track as notes. Steer into each note’s lane to catch it and it plays; catch them all and you have played the tune.
2D The track from the side, lanes stacked by pitch.
3D A road running away from you, the notes coming toward you.
Cabinet 02
grooph
Visual loop graphs for coding-agent workflows.
You draw who builds, who checks, where a person decides and when the work stops. grooph checks that every loop names a stop, then compiles the graph into a prompt package for a separate coding-agent harness. It runs no agent and calls no model, and graphs stay on your device.
A loop with no stop is a game with no ending. Take the stop out of this one and see what the check says.
Lap 1. The builder is building.
Cabinet 03
Amordle
A free word game with ranked multiplayer.
Any word length from 2 to 35 letters, three difficulties, a daily puzzle, and ranked multiplayer with an Elo rating. Two modes: OG is one puzzle with one answer, and GO is a chain of five, seven or ten puzzles where every answer you solve carries forward as evidence in the next.
Both modes can be played against another person on one shared board, taking turns. Ratings live in forty separate pools, ten clocks by two modes by Hard Mode on or off, because a rating only means something when everyone holding it played the same game. The eight tables at the top of this page follow that rule.
Play a round here: OG or GO, at the length the slider picks, with or without Hard Mode. It is a round in Amordle’s rules on this page, not Amordle itself; the daily puzzle, the three difficulties and ranked play are in the real game.
OG · 5 letters · six guesses
The round loads its words when you get here, and needs JavaScript.
Guesses must be in this round’s list, a slice of English OpenList: every word it accepts at 2 to 5 letters, and about a thousand at each longer length, suggested as you type.
Pool 1 of 40: OG, Hard Mode off, clock 1. A rating earned here is only ever compared with ratings earned here.
Cabinet 04
Ars Magna
An anagram finder.
Give it any text and it returns every way those exact letters can be re-partitioned into real English words, by a deterministic search. One rule, held strictly: every letter is used once, nothing is added and nothing is dropped.
ARS MAGNA. Latin for “the great art.”
Also on the floor
More machines
-
reword_nerd
A local-first browser workbench that turns a reviewed document, or a set of images, into a portable workbook of rewriting prompts. Everything stays reviewable in the browser, the download is a separate, explicit step, and the application contacts no model provider itself.
-
resmon
A local-first literature-monitoring desktop application. It runs scheduled searches across open-access scholarly sources, removes duplicates, and compiles reading reports, with optional summaries.
Player 1
Research
I started the MS in computer science at the University of Cincinnati in August 2025, with a concentration in artificial intelligence, and expect to finish in May 2027. My thesis advisor is Dr. Yizong Cheng. Before that, a BA in mathematics and a BS in neuroscience, also at Cincinnati.
My research interests are scientific visualization, computer graphics, digital media, software engineering, and information retrieval. Games sit where the middle three meet, and they are the direction I would like to take them: what a rule is, what a player can feel of it through a screen, and what changes when one rule does.
- Digital media
- Computer graphics
- Scientific visualization
- Software engineering
- Information retrieval