We’ve implemented some rich frontend apps for our clients recently with GHCJS and had quite a lot of positive feedback. However, it’s very underdocumented, and having a solid background in Haskell and nix is a must. Earlier, we’ve open-sourced Octopod which uses GHCJS heavily. Also, you can find some tutorials in this series of blog posts: https://blog.typeable.io/posts/2021-03-15-reflex-1.html. So, the bottom line is: GHCJS is a working tool that can be used to do very useful things, leveraging Haskell on the frontend, but it’s more than a little bit rough, so I can’t just blindly recommend it to everyone. YMMV.