This is an attempt at a ports-and-adapters style CQRS framework for use with Go. It borrows heavily from the dot net space, and as such may not be the most idiomatic Go solution out there. That being said, I think it exhibits the core values of a hexagonally architected solution, especially with the hot-swappable persistence store.