Or, if you really like elixir and don't mind its alpha status, you can look into elixirscript [2]. He gave a talk [3] in the conf.
Elm [4] is another alternative, but it wants to not just replace js, but html as well, with its very unique and useful "time travel" feature. Alan gave a talk in usage with Phoenix [5].
[2] https://github.com/bryanjos/elixirscript/blob/master/FAQ.md
[3] http://confreaks.tv/videos/elixirconf2015-elixir-in-the-brow...
[5] http://confreaks.tv/videos/elixirconf2015-phoenix-with-elm