Phoenix: LiveView
github.com
github.com
I think there are a large number of use cases for which this completely obviates the need to build a SPA. That's a huge time savings, and also makes for a faster cycle time as an app gets iterated upon/redesigned. The cost implications are massive.
In many circumstances I think it will also be a better user experience than a SPA -- e.g. this avoids "cold start" performance issues for a user's first page.
Thanks for the hard work Chris, José & team. Elixir & Phoenix are a joy to use while also being incredibly powerful/productive.
The apps I know were:
1. Freezes and needing a refresh/logout after the server-side "actor" or connection fails.
2. Refresh won't actually work, you need to login again.
3. Neither does back/forward, hence the big warnings not to hit back button, for example in a paginated list. Hitting back makes it freeze.
4. Extreme latency.
5. No shareable urls or hyperlinks possible, two tabs in same browser will sync with each other.
Or look at the ElixirConf keynote: https://youtu.be/Z2DU0qLfPIY?t=2503 (the video starts at 41:43 showcasing a cool demo where you would expect the latency to be a bottleneck, yet it's not)