I don't believe that Alexandr has answered the question.
The question is whether Haskell web frameworks do server-side rendering of JavaScript -- vanilla JS or JS-via-Haskell (GHCJS, Fay, etc.). My understanding is that Yesod does not pre-render JS (i.e., execute the JS and serve the resulting HTML). Rather, Yesod does server-side generation of HTML via hamlet (or blaze-html, or lucid, depending on your preferences).
The only library that I could find for Haskell server-side JS rendering (for Angular) is:
https://github.com/danchoi/ngrender
But it's still in beta.
If there are other libraries/solutions, I'd love to hear about them. This is a problem for me as well. I want to use purescript-halogen on the client, but... SEO.
Edit: For now, the best option might be to use nginx as your load-balancer in front of your Haskell server with prerender.io to supply rendered JS-pages to search bots:
https://github.com/prerender/prerender
https://gist.github.com/thoop/8165802