Thanks :). The answer for both questions - because of simplicity. Proper JS packager like WebPack would be a better option but it would require more code to write and maintain.
Websockets are also better, but require to write and maintain more code - on the client - to handle reconnections and unreliable networks, there's socket.io library, but it's quite large. And on the server too, as Websockets require server capable of maintaining lots of parallel connections. Also, I remember seeing benchmark, showing that for the request/response latency for websockets are no better than for old `fetch` call.