You just have to code every single user interaction and effect from scratch in every project unless you want to deal with ports or impurity.<p>Integration of different elm subcomponents is also a pain in the ass because it doesn't have any mechanism to agomerate existing functionality which modifies the UI.<p>Unless it solves those problems and includes functional objects and compile time macros to transform parts of the code it won't get practical any time soon.
With massive backing behind Angular and React from giants like Google and Facebook I doubt Elm will make a dent in overall adoption. There are many excellent functional transpile to JS languages out there (Clojurescript is my favourite) but industry wants Javascript. Furthermore, a lot of front-end JS is coupled with back-end Node.js so any new front-end language will need to integrate well with Node.js which is the new Enterprise hotness.