The thing is Google has a big search monopoly and they do like to have Search Console and Analytics plugged in for a website they are indexing.
PHP seems to be getting a lot of positives lately, especially Laravel. Many years ago I moved from PHP to Python and Django to now also use a few other Python frameworks like Flask as well. On the frontend, I've used Ember.js for two big SPA dashboards and also Vue 3 for WebSockets and API-based dashboard. With the dashboards bias, I would not pick anything that doesn't have a good data layer :)
Recently I'm also into static site generators like Astro and 11ty which are kinds of frameworks that generate a static site but the effect can be quite lively edited website through various git based headless CMS systems.
Why do you want to store them? I used socket.io in one app and I used channels to manage who gets what but disconnects/reconnects would happen often so I didn't use the connection directly, but emitting messages to clients currently subscribed to a given channel.
Agents log into the dashboard - connect and the server subscribes them to the "agents" channel to which ticket list items messages are emitted. Clicks on a ticket - that's a ticket_id unique channel to which he gets subscribed. Any disconnect/reconnect would create a new connection, the old one is dropped and the agent is once again subscribed to these channels based on where in the dashboard he is in.
Using a browser would be quite heavy, especially for one of those meme sites that handle a rather large flow of new content.