Chris Han

Archive

Some of the things I've worked on in the past.


Tote

2010 - 2019

tote

tote

Tote was the predecessor to Football. It supported most of the same features, but was an older application written in PHP.

There was a half finished predecessor written in Python using the Django framework, but it was abandoned.


Codex

2005 - 2015

codex3

codex2

codex

codex3

codex2

codex

Codex was a web application for reading stories. It supported a variety of indexing, categorization, and search options for stories, as well as options for optimizing readibility.

This actually went through three different iterations. The earliest was written in PHP and SQL. Later, it was rewritten as a Ruby on Rails app. Then, it was rewritten again as an Angular app backed by a REST API written in Ruby with the Sinatra framework.


GitPHP

2006 - 2014

gitphp

gitphp

GitPHP was a web frontend for browsing git repositories. It supported most standard git browsing actions, and could read data from a git repository by either the git executable or by reading the raw repository files directly. It was written in PHP.


Refract

2011

refract

refract

Refract was an OSX client to connect to and manage headless Transmission clients, written in Objective-C and Cocoa.


Personae

2009

personae

personae

Personae was a web application to provide digital versions of character sheets for pen-and-paper roleplaying games. Character sheets could be stored online, and all changes were stored over time, with the option to view any revision. It supported the White Wolf game Scion, although it was designed to be extensible to other universes. It was written in Python using the Django framework.


MDB

2006 - 2008

mdb

mdb

MDB was a web frontend for browsing files on a server, for example a NAS. It provided a browsing frontend for the files, as well as search and download functionality. It was written in PHP and SQL.


FBX

2007

fbx

fbx

FBX was a Linux clone of the Foobar2000 music player, developed as a design project for a college course. It was written in C++ using the wxWidgets GUI library.


hpiutil2

2005 - 2006

hpiutil2

hpiutil2

hpiutil2 was a library for decoding the binary data format of the units in the real time strategy game Total Annihilation. It was written in C++.


PySoulforge

2005 - 2006

pysoulforge

pysoulforge

PySoulforge was a desktop application to provide digital versions of character sheets for pen-and-paper roleplaying games. Character sheets could be saved to / loaded from files. It mostly supported White Wolf games such as Vampire: The Masquerade and Vampire: The Dark Ages, although it was designed to be extensible to other universes. It was written in Python and the wxWidgets GUI library.

There was an even older iteration of this originally just called Soulforge, written in C++ and wxWidgets.


SpringRTS

2005 - 2006

spring

commits

SpringRTS is an open source real time strategy game engine. At the time, the engine was Windows only, and I helped rewrite some areas to work in a cross platform (Windows/Linux/OSX) way. Some areas I worked on include shadow map rendering, audio playback, 3D rendering, image/texture loading, and config handling.


MVM

2005

mvm

mvm

MVM was a MIPS simulator that I put together to help myself learn the MIPS architecture for a college course. It ran files of MIPS instructions and showed the flow of data through a visual diagram of a MIPS datapath. It was written in C++ and ncurses.


xx-sources and xsched

2004 - 2005

xx-sources

xsched

xx-sources

xsched

xx-sources was a custom Linux kernel patchset containing a variety of options and experimental functionality not included in the base kernel. xsched was a custom process scheduler algorithm for the Linux kernel.