The Legend of Zelda, Hexagonal Architecture & You
summary
A 2008 C# ASCII demake called Fable of Griselda gets ported to the browser using Blazor WebAssembly, keeping most core game logic intact because of a hexagonal/onion design; many files are identical, some modules are ~64% unchanged, while display and I/O layers require major rewrites. The talk shows concrete diffs, the actual tools and gotchas (stream vs string readers, ConsoleKey enums, hardcoded settings), and a working web build so the claim that architecture enabled an easy port is demonstrated rather than just asserted.
AI-written summary · about
chapters (15)
- 0:00Start
- 8:45Gameplay Issues
- 13:51Webassembly
- 15:54Client-Side Blazer
- 18:26Layered Architecture
- 21:45Hexagonal Architecture
- 24:15Onion Architecture
- 29:25Game Tiles
- 30:12Abstract Enemy
- 30:47Map Loader File
- 32:40Main State
- 40:34Main Model File
- 44:24Learn More about Hexagonal Architecture
- 44:48Similarities between Hexagonal Architecture and Onion Architecture
- 45:10The Clean Architecture
related talks
01h 04mA fistful of Blazor; Its .NET in the browser
42mPractical Introduction to Building Browser Apps with F# and Fable
50mHow I built a ZX Spectrum emulator from scratch using C# and Blazor
55mF# and Fable: re-think web development
47mBlazor - Next Generation UI with .NET 6
44mA Cartoon Quest: New Adventures for WebAssembly
29mOnce Upon A Time, Somewhere Between Your Console And Browser
31mMake coding fun: developing a game in the browser
