Okay so one huge difference between now and the late 90's is that we have several very popular ways to create "components" of HTML/JS/CSS. From react to liveview it's very popular. This is important because it's much easier to maintain.
We did back then too. In fact we had SSR. It often took the form of CGI, like PHP - which, hate the language all you want, it has a very sane and scalable model.
and bi-directional data flow was done in the form on long polling. this sounds very much like a get off my lawn argument rather than anything rooted in reality of the now.
Long polling has turned into SSE. And rocks with HTTP/2. What was once old is new and in vogue again!
SSE isn't bi-directional, but sure - solves a bit of the long polling issue.
It absolutely was not popular.
What was not popular? PHP? Because that's... well, patently wrong.