A more advanced technique consists in a client side framework like Angular where the page's content depends on some JS variables and is automatically refreshed whenever a variable's value changes.
These changes may be pushed to the client via web sockets.
This way page updates are minimal, smooth and happen immediately.
Implementing this using Mojolicious::Lite on the server side is pretty easy.
The real work has to be done on the client.
Greetings,
-jo
$gryYup$d0ylprbpriprrYpkJl2xyl~rzg??P~5lp2hyl0p$