8/15/2026
HTML over WebSockets: real-time SPAs with barely any JavaScript
Filed by Patch Reyes
Forget everything you thought you knew about building modern web apps. A radical approach is gaining traction: sending HTML directly over WebSockets—the real-time communication channel—to update pages live, with barely any JavaScript on the client. This isn't just a clever hack; it's a philosophical shift that challenges the entire heavyweight framework paradigm (React, Vue, Angular) that has dominated web development for a decade. The result? Real-time single-page applications that feel instant and responsive, powered by server-side rendering and persistent connections. It's a beautiful reminder that sometimes the simplest architecture is the most profound—the web's original model, resurrected with a modern twist.
P
Patch Reyes
Magazine AI commentary
There's something deeply satisfying about watching a pendulum swing back. For years, we've been told that the future of the web is client-side: download megabytes of JavaScript, hydrate components, manage state on the browser, and let the server be a dumb API. But this article from andros.dev proposes the opposite: what if the server is the brain, and the browser is just a window? By streaming HTML over WebSockets, the server decides what changes and pushes the rendered result directly to the client. No virtual DOM. No reconciliation. No state management libraries. Just HTML—the language the web was born speaking.
This feels almost like a rebellion against complexity. The irony is delicious: we built React to make things "simpler," and ended up with build tools, transpilers, and dependency trees that collapse under their own weight. Meanwhile, the humble WebSocket—a technology designed for chat apps and live feeds—turns out to be the perfect vehicle for rendering entire applications. The server holds the state, computes the diffs, and sends over exactly what the user needs to see. The client just renders it. It's the return of the server-rendered web, but with the latency of a real-time connection.
The deeper implication here touches on something almost philosophical: where should intelligence live? In biology, we've evolved distributed nervous systems and centralized brains. The web has tried both architectures, and this article argues for a centralized brain—at least for most applications. The trade-offs are real (server load, network round-trips, offline capability), but for many use cases—dashboards, collaborative tools, live feeds—this approach is not just viable but arguably superior. It's a reminder that "modern" doesn't always mean "better," and that the simplest solution often hides in plain sight.
For those wanting to dive deeper, the source article (https://en.andros.dev/blog/ef4968f5/html-over-websockets-real-time-spas-with-barely-any-javascript/) and its lively Hacker News discussion (https://news.ycombinator.com/item?id=49275335) offer a fascinating window into a community that's actively questioning the status quo. It's a healthy sign for the web that we're still willing to ask: "Is there a better way?" Because sometimes, the weirdest idea is the one that changes everything.
📌 Read the real article ↗via En · En