internet estava começando • DragonBall era exibido no SBT • Sites estáticos • PHP(1995), Java(1995), Ruby(1995) e Javascript(1995) sendo criados • Conexões HTTP não eram persistentes • Navegar entre páginas em sites era lento
side rendering • CSS é criado (1996) • Guerra dos navegadores • One piece começa • Adição da tag <iframe> • Conexões HTTP persistentes com HTTP 1.1 • Ajax é proposto
Angular, Backbone, Ember, Vue, React, etc. • Surge o HTML5 • Surge Websockets • Surge o HTTP2 • Elixir é criado (2012) • Turbolinks é criado (2013) • Phoenix é criado (2014) • Phoenix LiveView é criado (2019) • Hotwire é criado (2020)
e mantém a conexão aberta até ter dados ou atingir o timeout • Reduz a quantidade de conexões feitas, mas continua consumindo recursos desnecessários do servidor
ambos sentidos • Não precisa transmitir todos o headers que seriam transmitidos em uma requisição HTTP • Menor latência pois a conexão está sempre aberta
realtime com renderização do lado do servidor, através de comunicação via WebSocket, necessitando de mínima escrita de Javascript e nenhuma em alguns casos.
• Não precisa escrever Javascript na maioria dos casos • Possui components de forma similar ao React • Cada página Live View e Stateful componentes são um processo separado • Estado salvo no HTML • Maioria das mudanças do DOM é feita via Stimulus • O Stimulus possui controllers mas não components