Personal Projects

Bandito Rubber Band Gun

Funded on Kickstarter

The Bandito is a rubber band pistol I designed. It's my take on a classic toy using modern materials & laser cutting. It features a clear exterior and a satisfying ratchet mechanism. It was successfully funded on Kickstarter.


noisy lets you generate fractal noise from the command line. It's perfect for rendering smoke, fluids, and terrain. Simply install noisy with NPM and run a command to produce a png image. In the case of 3 dimensions, noisy will generate a series pngs over a range of z values.


  • Supports Perlin and Worley noise
  • Can generate 2D and 3D noise
  • Seamless tiling in all dimensions
  • Easy to use

Simple RTS

Simple RTS is a lane-based strategy game for Unity3D. Internally, the game uses an event system to reduce interactions between game objects and simplify state management. This has a few advantages over the traditional pattern of letting game objects communicate with each other directly. Most notably, writing unit tests is a lot easier.


csvutil is a command line utility for working with CSV files. It supports markdown and is handy for creating data snippets on GitHub Gist. Working on this gave me more exposure to RxJS and stream programming.

React Image Timeline

My most popular GitHub project

Like the name suggests, react-image-timeline is an image-centric timeline component for React.js. It renders a series of events in a vertical layout. It's lightweight, customizable, and should serve as a good starting point for timeline UIs. I created the component to better understand babel and webpack.

Pennypult Toy Trebuchet

Funded on Kickstarter + staff pick + front page feature

The Pennypult is a desktop trebuchet with a unique design. It's easy to construct and powered by spare pennies. On Kickstarter, it was briefly featured on the front page as a staff pick. The project was funded on the first day and reached two stretch goals! All aside, it was another fun and creative Apptivus project.


GistList is a GitHub-integrated task list for iOS. It's Apptivus's second app and a welcome departure from games. It's a useful tool if you use markdown and Gist frequently. It's an app that tries to do one thing well. At this time, it is no longer in the App Store. However, you can find the source on GitHub.

Alien Hero

Featured by Apple on the App Store

Alien Hero is an endless runner for the iPhone and iPad. It features a lovable green alien and terrified human bystanders. If you like games like Jetpack Joyride, you might enjoy it. Additionally, it has some great artwork, sound, and music. I learned a alot about the App Store and monetization making this. As of today, it is no longer available in the store.


Ludum Dare game jam submission

Survive! is a simple avoider game written in 48 hours for the Ludum Dare #28 game jam. It was an opportunity to experiment with Unity's new 2D rendering engine. The talented Kris Zalameda provided the artwork and design.

Minimalist RTS

Ludum Dare game jam submission

This was my first submission into a Ludum Dare game competition. It's a lane-based strategy game featuring only one unit type. The contest prompt was "minimalism". I built the game in under 48 hrs and made all the art and sound from scratch. For such a simple strategy game, there is still some skill required to beat the AI.


Spheres is the first application I developed for the Apple iPad. The app renders a cloud of spheres with a moving light source and camera. The goal was to use the GPU to perform the ray-tracing calculations. The performance is acceptable even on a first generation device. As of today, it is no longer on the App Store.


My first published iOS app

BubbleSnatch was my first published iOS application on the App Store. It's a physics-based puzzle game where you rescue colored sea creatures. It's an enjoyable game and was generally well received. I learned a ton from making this game and it was a good introduction to Objective-C and the iOS platform. Currently, it is no longer available on the App Store.


Front page -

This game was my most successful attempt at making a 3D shooter in Flash. Flash does not provide support for capturing the mouse so the controls feel a little weird. Temple features monsters, exploding barrels, and dynamic lighting. I wrote my own 3D renderer in the process. Writing the game definitely furthered my knowledge of 3D graphics and game design. The game was sponsored by


Front page -

3000AD is a MechWarrior-inspired action game. It features tanks, giant walking robots, and lots of explosions. This was before I started working with a designer so I had to produce the artwork myself. The game was well received in the Flash game community despite the generic artwork. The game was sponsored by

Zombie Slayer

Front page -

This was the first game I wrote for Flash 9. ActionScript 3.0 and the accompanying speed improvements were a welcome change. This game has some interesting physics and lots of zombie action. I did everything myself so the art and sounds are not the highest quality. Despite this, people liked the game and was featured on the front page. ActionScript's similarity to JavaScript prepared me for future web projects. The game was sponsored by

Burning Bridges

My first completed software project

This is a real-time strategy game I wrote in highschool. The A* path-finding was my introduction to search algorithms. In a sense, it was my first "real" game. I even wrote a level editor to go with it. People seemed to enjoy the game despite the dated graphics.