Many of us had previous Elm experience, but the ones who didn’t were able to pick it up very quickly. We love Elm for its simplicity, it’s opinionated and good architecture, and top notch compiler messages. We recommend it as your first consideration for a frontend language.We used servant-elm to generate Elm code from our Haskell API. That didn’t work as well as we had hoped because support for mixed sum types wasn’t as good as we would have liked, and we made some decisions that we later regretted because we weren’t diligent enough. Those decisions were heavily influenced by the generated code and we would never have chosen them otherwise. So if you want to use servant-elm or a similar tool, try it out with your most complicated types first, and continue to write good code that is organized well.