But:
> immaturity of ecosystem
This is more a convention in Elixir. Lots of packages wait with 1.0 even if they are stable and many years old.
> Couldnt do conditional forms
This is possible. But yea, complicated forms can be a pain in Liveview sometimes. But you can always escape to LiveSvelte.
> Adding JS
Depends on the app you are building. But I don't find that there are so many things that need JS commands (other than menu drop-downs, etc). Anything with state can just be live view.
> Godawful errors
Maybe just a preference/exposure. I find elixir errors so much easier to understand than JS or Python. That said I see you are using Ash and I think that is the reason. Errors in Ash are awful (Ash is super cool but errors are a pain).