My Projects

Listed below are a few of my personal projects. Click on the links in the top bar or below to read more.


Programming in Odin for Absolute Beginners

I'm curently in the process of writing a series of tutorials for programming in Odin. The series is aimed at those who have never programmed in a systems-level language before and want a place to start. Click here to read more.

Jai GON Parser

The Jai GON Parser is a fast and powerful SAX-style parser for GON files with a simple interface that one can begin using within minutes. This parser leverages the power of Jai's runtime type information to automatically convert string data GON files into the internal types that your program actually uses.

sample_object {
    file_name test.gon
    number    35.35
    string    "this is a string"
    array     [ 1 [ 2.1 2.2 ] 3 ]
    nested_object {
        number 53.53
        string "this is a string"
        array  [ 1 2 " three " 4 five 6 7 8 ]
    }
}

uGON Data File Parser

GON is a plain-text file format similar to JSON which can be used to store structured data in fields, objects, and arrays. My parser for this format is comparable in speed to rapidxml, and uses some of the same strategies to atain its high performance. The library can be included as a single C/C++ header file with no external dependencies. Click here or on the top bar above to learn more.


OpenEnded

OpenEnded is a new precision platforming game engine I am developing in C. It is highly inspired by The End is Nigh, however it does many things differently as well, bringing in ideas from other games such as Super Meat Boy, Celeste, VVVVVV, Braid, and Mr. Gimmick. Click here or on the top bar above to learn more.

Screenshot

The End is Nigh Randomizer

Screenshot Screenshot

The TEiN randomizer is currently a work in progress, but it already has a ton of features and content. Click here or on the top bar above to learn more.