Kaspar Korban writes about Elm, Elixir and Phoenix, ORMs, and database design, and also sells programming books.
HN commenters link it for Elm guides, including elm-ui and custom elements, and for his Elmstatic static site generator.
For a long time web components generally built on four standards:
- Custom HTML elements - Shadow DOM - HTML imports - HTML templates https://korban.net/posts/elm/2018-09-17-introduction-custom-elements-shadow-dom/
Eventually it became clear some browsers were not going to implement and the design of HTML imports was better handled be ES modules.
https://webmasters.stackexchange.com/questions/127482/on-what-specific-grounds-were-html-imports-rejected-deprecated-and-removed
I personally think it depends on how we define components. ELM does not have components like Vue or ReactJs. ELM's components are just functions.
For the example described in the below article, I think channelPanel and chatPanel can be looked as components.
https://korban.net/posts/elm/2018-11-17-elm-ui-introduction/
One way to get static HTML/CSS from Elm is to execute the JS it produces and serialise the results from the DOM. That's what I do in my static site generator Elmstatic: https://korban.net/elm/elmstatic
Check out elm-ui.
https://korban.net/posts/elm/2019-11-17-elm-ui-introduction/