Você provavelmente já se pegou pensando em jogar tudo para o alto e reescrever sua interface em React ou Vue. Quando o projeto exige reatividade — um formulário que atualiza parte da tela, uma lista infinita ou notificações em tempo real —, a primeira reação de muitos devs é achar que o Rails sozinho não dá conta.
Eu já estive nesse exato lugar. Nesses mais de 14 anos desenvolvendo aplicações, passei pela dor de escrever toneladas de JavaScript com jQuery, sofri com conflitos de scripts globais e até mesmo caí na armadilha do "API-only", onde você passa a gerenciar duas aplicações diferentes (backend e frontend), duplicando lógica e perdendo a produtividade que o Rails te deu em primeiro lugar.
O Hotwire não veio para ser mais um framework da moda. Ele veio para resolver o problema da complexidade desnecessária. Mas você só vai parar de travar quando entender que a mágica não é magia negra: é apenas o uso correto da arquitetura do HTML transmitido via protocolo, combinado com um ciclo de vida muito bem definido.
A Divisão de Responsabilidades: Turbo vs. Stimulus
A regra de ouro que usamos na Academia do Ruby é simples: Turbo é navegação e contexto; Stimulus é comportamento JavaScript. Se você precisa trocar um bloco da página, atualizar uma lista ou navegar sem recarregar tudo, use o Turbo. Você não precisa escrever uma única vírgula de JavaScript. Agora, se você precisa integrar um calendário, abrir um modal, criar um auto-submit de formulário ou escutar um atalho do teclado, aí sim o Stimulus entra em cena.
Ainda não há comentários. Seja o primeiro a comentar!