The 'view' functions in Elm return HTML (represented using an ELM DSL for convenience) that is added to the DOM and so then rendered using some CSS provided elsewhere in the normal way.
Try it out. IMO it changes everything about frontend development.
[1]: http://package.elm-lang.org/packages/mdgriffith/style-elemen...
I'd think a particularly adventurous person could do it without writing any HTML and just create the scaffolding directly in the DOM before the app is mounted, but that would be a little silly.
React (at least as I understand it): The app emits HTML and CSS you wrote
Elm + style-elements: The app emits HTML and CSS you described
One crucial thing that is missing is guaranteed browser support. That is why we only used it for the clients internal frontend. But as I understand it, this will be addressed in the upcoming 5.0 release.
Also the resulting HTML is not always as optimal as I would hope.
All in all development is just so much faster and cleaner. No need to worry about layout and style. After using style-elements for a while, HTML + CSS seem like a really stupid idea to describe layout and style.
Not very, from my experience. You would basically need to introduce a sourcemap equivalent.