Generate a random hex-based landscape with elevations and rivers on a Ruby backend, then display the map in HTML5 Canvas with Coffeescript.