HTML sobre WebSockets: SPAs en tiempo real con muy poco JavaScript

Fuentes: HTML over WebSockets: real-time SPAs with barely any JavaScript

El artículo describe el patrón conocido como HTML sobre WebSockets, una variante en tiempo real y bidireccional de la familia 'HTML sobre el cable' que permite construir aplicaciones de una sola página (SPA) con un mínimo de JavaScript en el cliente. Frente al enfoque tradicional —un framework JavaScript que dibuja la vista y una API que sirve JSON— esta arquitectura envía HTML ya ensamblado desde el servidor a través de un canal WebSocket persistente, de modo que toda la lógica de renderizado permanece en el back-end, en un único lenguaje y sin contratos.

El texto repasa su origen en Phoenix LiveView, presentado por Chris McCord en ElixirConf 2019 con un clon de Twitter construido en 15 minutos sin frameworks de front-end, y explica el funcionamiento paso a paso: el cliente abre un canal, envía eventos de texto, el servidor consulta la base de datos, renderiza con su motor de plantillas y devuelve HTML listo para colocar en el DOM. Entre las ventajas se citan un único motor de renderizado, ausencia de API, estado en el servidor, menor latencia por acción, difusión simultánea a todos los clientes (útil para chats, paneles o juegos multijugador), SEO razonable y mayor resistencia a XSS. Como inconvenientes se mencionan el mayor consumo de recursos del servidor, la dependencia de la conexión, la ausencia de modo offline y una curva de aprendizaje inicial. El autor ilustra la viabilidad con un caso real: picos de 600 lectores simultáneos en hardware equivalente a una Raspberry Pi 3. El artículo cierra con un panorama de implementaciones disponibles en distintos lenguajes, centrado en el transporte WebSocket.