In my opinion currently the best solution if you want to write frontend and backend in the same language!
I actually don't know much about F#, but Elixir is great. The main problem with Elixir is that batteries aren't included for a lot of things and some libraries are hard to work with because they don't expose the right interfaces. It's not too bad - you just fork your own version and make the necessary changes, but it can be a little annoying. Also, don't fall into the trap of "do everything in Elixir", if there's a library you really need that exists in another language, it's ok to wrap it in a "micro service". Being overly purist about everything needing to be in Elixir set me back a little bit. You have a lot of ways to call out to other services/languages from a simple HTTP API, to a NIF (natively implemented function; currently C, Rust, and Zig have good support), to something like GRPC.
If you do want to learn Elixir, I would recommend learning Erlang first or in parallel to Elixir. Learning Erlang will make all the syntactic sugar very obvious and give you an appreciation for what both languages provide.
Oh one more cool part - Elixir is great as glue with other parts of the BEAM ecosystem. You can easily call out to Erlang modules and Gleam modules. I haven't tried with LFE though.
On the F# side:
"Where are the F# jobs? I've checked the various FP-centric job-sites - they're as barren as everywhere else. It almost seems as if Haskell jobs are more plentiful! Haskell!"
https://www.reddit.com/r/fsharp/comments/24layv/where_are_th...
[0] https://medium.com/gitconnected/functional-programming-in-ty...