I have nudged electrons together to form fully functional and stylized web applications using HTML, CSS, and JavaScript!
Explore procedurally generated worlds and dungeons to search for treasures.
An HTML5 puzzle-solving game. Illuminate the orbs in the correct sequence to advance.
Supply chain management simulation. Build resource harvesting buildings, provide workers to operate them, and connect everything with roads. Colonize other planets when you've gathered enough resources. Half-finished game I made while waiting for SimCity to be released on Mac.
Simple infinite runner game; explores mobile-first design for performance and display.
An experiment in using CSS transitions and background images. Works pretty well in some cases, but ultimately I decided to use the canvas element instead.
Simulated food chain - rabbits eat carrots, wolves eat rabbits. Explores finite state machines and minimaps.
A simple algorithm to cast shadows from polygons. Originally created to play with iPad + canvas.
My very first canvas project; explores pathfinding and isometric projection.
Something like shared refrigerator magnets; many concurrent users and real-time updates. Uses firebase.
Defend your cities from missile attacks! I used this project to experiment with managing multiple game scenes (play/menu).
A simple pathfinding algorithm and animation. It does a breadth-first search until it finds the target and walks back using an iteration gradient.
An algorithm to determine the winner of a round of poker.
My attempt at implementing a Forth interpreter. Forth is an imperative, stack-based language.
My CoffeeScript implementation of Amit P's 2D visibility algorithm.
This algorithm determines if a candidate sudoku solution is valid.
Explores the limits of compressing english text.
Human-readable text compression format using an alphabet of 146 characters.
Reverses a string in n/2 time.
An example of a visual element being animated in multiple dimensions.
An algorithm to condense time blocks to ranges of available times.
Finds the 3 elements in a list with the greatest product.
An algorithm to find the greatest earnings in historical stock data.
A Marionette/Backbone web app for creating story-based games, like twinery.
Queue data structure created using two stacks.
A pathfinding method that could work really well for games with very many navigating agents.
Pathfinding for large areas, using flow fields and breaking the map into smaller sectors.
Flow fields pathfinding for my procedurally generated terrain algorithm.
Simple algorithm to draw an ascii spiral.
A multi-angle online video player suitable for 2-4 camera recordings. Built with Marionette.
An angular app to search through the characters of the Marvel universe.
Advice-on-demand. Made with angular.
Simple notes app using localStorage and in-place editing. Built with react.
Simple Venn diagram library for compairing 2 data sets.
Experimenting with ways of drawing complex particles efficiently. Currently supports 2,000 particles at 60 fps.