Projects

I don’t actively maintain projects any more, but in this page you can find various software I have built and (usually) freely distributed in the past.

Picaxo 2

Picaxo 2 (2016) is a rewrite of Picaxo Image Viewer, a lightweight image viewer I wrote in March 2008. It is written in C++ using the cross-platform SDL2 library. It has some basic image processing features, and has been tested on Windows and Linux.

Check out the Picaxo 2 Bitbucket home page for documentation, screenshots, source code and downloads.

Ultima 1: Revenge

Ultima 1: Revenge is an attempt at reverse engineering Ultima 1 in order to document the game files and create an engine port.

The engine port went through a number of different iterations:

  • First engine port in C using SDL (2007)
  • Second engine port in C# using XNA (2012)
  • Online map viewer in PHP and JavaScript (2015)
  • Third engine port in C++ using SDL2 (2016)

You can find more information about this project:

Dandago.Utilities

Some utilities classes that I find myself recreating and reusing all the time have been added to NuGet as the Dandago.Utilities package (2016). Some of these are based on my Scope Bound Resource Management article.

Finance Library

My finance library (2015) is a small NuGet package providing common finance-related functionality such as IBAN and credit card validation.

.NET Settings Framework

The .NET Settings Framework (2015) is a mature AppSettings abstraction available via NuGet. The concept behind it was developed over several years and finally released as a proof of concept with well-documented design considerations.

Its primary strengths are in eliminating the boilerplate needed to read and validate AppSettings, and in being a testable framework that fits in well with dependency injection.

It is also designed to cater for more advanced scenarios such as reading settings asynchronously (e.g. from a database).

Since .NET Core has finally brought a robust configuration library to the .NET world, this .NET Settings Framework is no longer necessary.

ImapTalk

IMAPTalk 2.0.0.0 beta 1 – IMAP analysis

IMAPTalk (2012-2015) is a simple IMAP client that allows you to talk to IMAP servers by typing in your own commands. It is a learning tool written to allow people to learn more about email technology and how IMAP works.

Despite being made for the purpose of learning IMAP, it works just as well as a diagnostic tool for most line-based internet protocols, including IMAP, POP3, SMTP, HTTP, FTP, chess servers, and possibly others.

Lilly Notes

Lilly Notes beta 3 release (0.3.0.0)

Lilly Notes (2014) is an application that allows you to lay out your notes and TODOs into a virtual workspace, in much the same way you would lay out your sticky notes on your physical desk, allowing you to easily brainstorm or visualise your tasks.

Older Projects

My older projects can be seen at Gigi’s Computer Corner:

One thought on “Projects”

Leave a Reply

Your email address will not be published. Required fields are marked *

"You don't learn to walk by following rules. You learn by doing, and by falling over." — Richard Branson