Raymarching ✼ Published July 2026. It's a real-time raymarching engine I built using webgl and javascript.
Features clouds, procedural terrain, cheese blocks, black holes, and, of course, turtle hell.
You can explore the little worlds I've made, or mess around with creating things. The editor has a bunch of unintuitive controls that are vaguely explained in main.js.
Oje Singett ✼ Published Oct 2024. It's Oje Singett. See my explanation in the extras section.
Monarch ✼ Published January 2022. It's a very short game where you overthrow the monarchy. I'm still proud of the art and gameplay.
I managed to surprise myself by putting the whole thing together in a single month.
Run 3 Remake ✼ Published June 2021. It's Run 3, remade using just vanilla JS.
I point this out because I have been asked multiple times what library I used, and it's not using any libraries. The 3d renderer and physics system were done from scratch.
My one regret is that there are occasional clipping issues in complicated tunnels (this is what I get for writing my own, imperfect, renderer).
It's been several years since I wrote this, and if I were to try it again now I would probably use webgl. I would also playtest more.
Original Games Monarch - a very short RPG where you overthrow the monarchy with the help of some cool kids.
Circle System - advanced bubble popping. I highly recommend playing with sound, as audio cues help you figure out what's going on.
Rotate - explore a slightly mind-bending 3d world full of basic shapes
Tile World - puzzle solving in a hexagonal tile space. Maybe there's lore? Maybe you're reading too far into it.
The ascent - Mountain climbing with a slight twist
The ascent 2 - Same concept as The Ascent, but with a better map, better movement, crumbling blocks, and jelly squares!
Wacker: the 8 pages - a short game I made in 48 hours for Kiln 2025.
Heaven's price - a short climbing game I made in 72 hours for Ludum Dare 49.
Adversarial Farm Game - now you too can experience exponential growth! (Alongside another player.)
Present Finder - Find pulsating presents in this wacky 2.5d world
Ball Game - my first javascript game, made in 2017. It's not very good. The text at the bottom appears to lie as well? But if I were to go back and fix it, I would have to commit to rewriting the entire game from scratch. Now that's an idea...
Package Parsing - My second javascript game. Not particularly balanced, but alright I guess.
Sun survivor - pilot a spaceship before the sun explodes! I've been told the tutorial is confusing.
Get To The End Although There Is No End - traverse a slowly decaying bridge in a water world
XO games - a set of board terminal-input games played with Xs and Os. I never really finished these so they don't work too well.
Simon Says - it's simon says. Y'know, from among us.
Tetris - it's tetris
Flutter poultry - it's flappy bird
Interactables Raymarching - A demo of my real-time raymarching engine.
3d Fractals! - raymarched 3d fractals, rendered in real time. You can play around with the parameters to create your own, and fly / walk around the surfaces!
The Desert - 3d world + editor that I abandoned. As of Febuary 2025, it runs much better on chrome than firefox for some strange reason that probably has to do with JIT compiling.
Interactive Mandelbrot set - Click to zoom in, use sliders, play around! This version uses Web Workers for maximum efficiency. You can compare it to mysinglethreaded version if you want to!
Solar eclipse visualizer - kind of neat I guess
Neural Network field coloring - draw points on a field and watch a neural network learn the pattern!
Simple Satellite Simulation - satellites orbiting a wireframe earth, with some nice graphs to go with
Pascal's triangle - (now with neat little coloring schema)
A Plot of Primes in Polar Coordinates - superb subtractively spaced spirals
Circle Cursor Hover - hover over the circles as fast as possible to make the numbers go up. My best SR is 14.95
Displays Apollonian Gasket - A customizable apollonian gasket visualizer. The standard way of calculating these (imaginary math) is a little beyond me, so I used some simpler geometry hacks. It almost works all of the time!
Monopoly probability distribution - have you ever wondered what the most likely square to land on in monopoly is? Me too! That's why I made this page.
Run 3 Tunnel visualizer - unwraps and visualizes run 3 tunnel data; I would advise you to just use the editor forrun 3 (Edit mode -> Properties -> load) as it allows you to visualize the tunnel in 3d space better.
Matrix Visualization Helper - a little demo I made for a quick class presentation. It's a bit counterintuitive to use if you don't know all the keybinds.
Go Kifu helper - if you have a paper kifu and want a quick way to visualize it on a board. A supremely uncommon problem, but one that I decided to solve.
Tab name - super simple, allows you to name the tab title
View the old clementine homepage - if you like simplicity and not-quite AA compliant contrast
Other Oje Singett - A multi-format video I made about isolation and the internet. It took me a year to make and is approximately 50 minutes long. I'm always a little unsure of how to explain this project, as there are a lot of parts to it, and it's not really like anything else. But at the very least, it's got a bunch of humorous bits. So hopefully you enjoy it!
Notebook comics - a bunch of hand-drawn comics I've made. Unfortunately they're a bit difficult to read.