We got many questions on how CityMayor, our dApp to trade cities with Ethereum, was working under the hood. We will try to explain it in this blog post and the reasons behind those decisions. For our requirements: We wanted to offer the best dApp experience to the CityMayor users and avoid a slow dApp. Non-ethereum users should to be able to take a look at what we were doing without the need to install metamask or use something like Mist/MetaMask.