Does anyone here know of, or did any sort of experimentation or thinking in terms of either improving or building upon or writing an alternative to how LiveView and Phoenix work together?
In particular, I was wondering if someone looked at the problems of:
-
Two separate APIs, dealing with two separate types of connections (HTTP vs WebSocket, conn vs. socket) and an attempt to unify it? Like, if I want to read or set a HTTP cookie from LV, or when I want to pass data from Plug world to LV world.
-
Getting rid of the double rendering (and thus double data loading) behavior on mount (connected vs. not connected)?
Also, do you know of frameworks in other languages, that do similar things that LiveView does, but maybe handle the mentioned cases better in some way? If so, what are the trade-offs?
I know of Hotwire and Laravel LiveWire, but they may be others.
Would HTTP/2 HTTP/3 offer a chance to build something that does not have to deal with two different realms - one stateless and another stateful?
[EDIT]: I had a chat with AI that was quite enlightening to me. I think what I would like to have could be built using something like RabbitMQ or Kafka or Redis, but that would be an additional - and quite complex - dependency.