The Legend of Zelda, ASCII Art, Hexagonal Architecture, and You:

In 2008, I made a game as an entry into a bootleg, demake competition. The result was Fable of Griselda, an ASCII art console-based demake of The Legend of Zelda for the original NES.I had a great time writing it and a number of people downloaded it and enjoyed playing it.

The last few years I’ve been thinking about Fable of Griselda. I wanted to make it more accessible to more people. Turning it into a web application was the obvious way to do this. However, the original code was written in C#. Porting it to Javascript wasn’t really a task I looked forward to. But recently, Microsoft has released Blazor WebAssembly, a framework with the promise of running .NET code in the browser through the magic of web assembly.

This presentation shares the process of converting almost 15 year old code from a console application to a web application that runs completely in the browser. This sounds like it should have been a nightmare, but ended up being relatively easy due to the use of a hexagonal architecture (some call it ports and adapters, others call it onion architecture) in the original code.