lucifer: I found one way that does work, it might just be enough... HTMX does not support socket.io as you mentioned, but I can load the socket.io client JS, connect to the server endpoint (emit user_name JSON), then when a playing-now event comes from the server I can trigger an HTMX event in the client page. This then triggers a reload that hits the correct fragment endpoint (fetching the HTML fragment again) Not sure where that leaves us in terms of resource-saving: is the long-running WS connection definitely better than periodic polling?