• Trail Commons

    Trail Commons is a website for sharing trails and trail metadata(photos, GPS traces, elevation profiles, etc.). It's my most current work in progress. I'm developing it using the Martini web framework for an API and a front-end client in angular.js. You can view its code here and see the website live here.

  • Cards

    Cards is a web application for playing card games with other people over the internet. I've been working on this on-and-off with my friend Ryan. This project is purely javascript. It runs on nodejs and uses socket.io to handle communication. It's undergoing an evolution from jquery to angular.js at the moment. You can view its code here.

  • Search Engine

    This project is a basic search engine. It includes a spider, a queue handle indexing requests, indexing logic, and search logic. It runs on python and mongodb and is still a work in progress. You can view its code here

  • Blog

    This website has undergone a couple evolutions. Originally it was a django site, but I decided to convert it into a static site(generated with Jekyll) since I was using it for serving static content. You can view the old repository here and the new repository here.

  • Google App Engine Imageboard

    This site is an imageboard where users can upload and share images. It was built with Python and Google App Engine. The data is stored using Google Storage Engine, a NoSQL database provided by Google. I used Jinja2 for the templating on this site. You can see the code for it here and a live instance of the site here.

  • Rotation Encryption

    This script was a learning experience on data types and object-oriented programming in Python. I made a first version and then revised it about a month later, incorporating my own feedback into the revision. Text is entered, broken into 8 character chunks, and transformed to a two dimensional list of the ASCII binary values of each character. The list is then rotated 90 degrees and the resulting binary values are reinterpreted. You can view the code for it here.