I ♥ open source. Here are the projects I created and/or maintain.


DotLiquid is a (dare I say "the"?) secure, open-source template engine for .NET. It is a .NET port of Ruby's Liquid Markup.

More info


DynamicImage is a high-performance image manipulation library for ASP.NET. This isn't really my project - it was created by Sound in Theory. In my own fork, I've been steadily moving it forwards, to the point where I think it's a great choice for ASP.NET image manipulation, especially if you need more complex layering or combination of filters.

More info


Gemini is a WPF framework for creating IDE-like applications. It includes a number of modules that provide useful out-of-the-box functionality: CodeCompiler, CodeEditor, ErrorList, GraphEditor, Inspector, Inspector.Xna, Output, PropertyGrid and Xna.

More info


A software rasterizer written from scratch in C#. The API is closely modelled on Direct3D 10 and 11, and is split into several pipeline stages: input assembler, vertex shader, geometry shader, rasteriser, pixel shader and output merger. It uses SlimShader to parse and execute HLSL shaders entirely on the CPU, in managed code.

More info


SlimShader is a Direct3D shader bytecode parser for .NET and C++. It includes a virtual machine, capable of executing HLSL vertex shaders, geometry shaders and pixel shaders entirely on the CPU, in managed code. I use it in Rasterizr, my 3D software rasterizer.

More info


DotWarp is an open source server-side 3D renderer for .NET 4.0. It can be used in a background application (i.e. one without a UI) for rendering 3D meshes into 2D bitmaps.

More info


These are the projects and games I've worked on in the past.