Conforme divulgado na Rails World 2024 e também no Blog da 37signals, o Hotwire irá receber novos recursos! Um dos mais empolgantes é o Hotwire Native, uma abordagem revolucionária que vai simplificar o desenvolvimento híbrido e levar o que já amamos no Rails para o mundo mobile. Mas o que exatamente é o Hotwire Native e como ele pode transformar o desenvolvimento de aplicativos móveis?
A evolução do Hotwire
Para entender o Hotwire Native, é importante dar um passo atrás e olhar para o Hotwire como um todo. O Hotwire foi introduzido como um conjunto de tecnologias que incluem o Turbo e o Stimulus, pensados para facilitar o desenvolvimento de aplicações modernas sem precisar depender de frameworks front-end complexos. Com o passar do tempo, outra biblioteca chamada Strada foi adicionada ao ecossistema, permitindo a criação de funcionalidades nativas em apps que já utilizavam Turbo.
No entanto, muitos desenvolvedores relataram que o uso conjunto dessas ferramentas gerava certa confusão, especialmente em relação ao papel de cada uma. Além disso, a integração do Strada com o Turbo Native se mostrou mais complexa do que deveria ser. Para resolver esses problemas, a 37signals decidiu consolidar essas ferramentas em um único framework, mais coeso e acessível: o Hotwire Native.
O Que é o Hotwire Native?
O Hotwire Native é o próximo passo na evolução do desenvolvimento híbrido. Consolidando o Turbo Native e o Strada, se mantém o que já existia de bom, mas agora de forma unificada e simplificada. O objetivo é facilitar ao máximo o desenvolvimento de aplicativos móveis, aproveitando ao máximo o código já existente da web e adicionando funcionalidades nativas quando necessário. Dessa forma, a criação de apps móveis se torna uma extensão natural do que já fazemos com nossas aplicações Rails.
A principal vantagem dessa abordagem é a flexibilidade: não é necessário fazer uma escolha imutável entre um app completamente nativo ou completamente web. Pelo contrário, o Hotwire Native permite reutilizar as telas já desenvolvidas na web e, à medida que o projeto evolui, adicionar componentes nativos onde isso fizer sentido — por exemplo, para melhorar a experiência do usuário em funcionalidades mais críticas, que demandam maior fidelidade ou desempenho.

As principais Novidades
Não se trata apenas de consolidar bibliotecas, mas o Native também traz uma série de melhorias que o tornam ainda mais útil para desenvolvedores que querem construir apps híbridos, mantendo a simplicidade do Rails.
Uma das melhorias mais significativas é o novo sistema de navegação, capaz de lidar com situações complexas de maneira muito mais fluida do que as versões anteriores. Navegação complexa pode ser um dos maiores desafios ao desenvolver aplicativos móveis, mas a 37signals trabalhou para garantir que o Hotwire Native resolvesse esse problema de maneira fluída e integrada.
Além disso, os componentes Bridge — anteriormente conhecidos como componentes Strada — agora funcionam de forma imediata, sem a necessidade de configurações complexas. Isso significa que, ao integrar funcionalidades nativas a um app Hotwire, o desenvolvedor não precisará gastar horas configurando e ajustando componentes, podendo focar diretamente na criação de valor para o usuário. A configuração inicial para iOS e Android foi otimizada, permitindo que novos apps sejam criados com apenas algumas linhas de código, tornando todo o processo muito mais acessível, mesmo para desenvolvedores que não têm tanta experiência com plataformas móveis.
Um dos grandes diferenciais do Native é a maneira como ele se adapta às necessidades de equipes pequenas e projetos que precisam de agilidade. Tradicionalmente, o desenvolvimento de aplicativos móveis pode ser custoso e complexo, exigindo times grandes e especializados para construir apps nativos para diferentes plataformas. Com o Hotwire Native, isso muda. A filosofia web-first, que permite construir uma aplicação majoritariamente baseada em tecnologia web e apenas adicionar funcionalidades nativas quando necessário, reduz drasticamente o custo de entrada e o esforço de desenvolvimento.
Por exemplo, imagine que você desenvolveu uma aplicação web utilizando Turbo e Stimulus, como um painel administrativo ou um serviço de e-commerce. Com o Native, você pode transformar essa aplicação em um app móvel sem precisar reescrever tudo do zero. Ao invés disso, você aproveita o código existente e apenas cria componentes específicos em Swift ou Kotlin para melhorar áreas que exigem uma interação mais integrada com o sistema operacional do dispositivo, por exemplo uma tela de mapa.
Como Integrar o Hotwire Native no Seu Projeto?
A integração do Hotwire Native em projetos existentes é simples e incremental. Ao invés de substituir tudo de uma vez, é possível fazer uma progressão gradual, mantendo partes do app baseadas na web e introduzindo funcionalidades nativas conforme a demanda. Essa abordagem é especialmente útil para startups e equipes enxutas que precisam validar funcionalidades rapidamente e, ao mesmo tempo, querem melhorar a experiência do usuário ao longo do tempo.
Se você já tem uma aplicação Rails em produção, adicionar o Hotwire Native pode ser uma maneira de expandir seu alcance para plataformas móveis sem incorrer nos altos custos de ter que recriar seu projeto através de desenvolvimento nativo tradicional.
Ao utilizar os componentes conhecidos como Bridge, é possível acionar recursos nativos do smartphone ou tablet como acesso à câmera, GPS, ou notificações push de forma integrada, sem precisar lidar com integrações complexas ou “gambiarras”.
A Filosofia do Rails, no Mobile
O lançamento do Native reforça ainda mais a filosofia do Rails de fazer mais com menos, focando na entrega de valor. Com certeza, essa é uma ferramenta que diminui drasticamente a barreira de iniciação do desenvolvimento móvel, permitindo que desenvolvedores criem aplicativos robustos e de alta qualidade, mesmo sem grandes equipes ou orçamentos astronômicos.
Esta é uma etapa de democratização do desenvolvimento híbrido, onde as barreiras entre o que é um app web e um app nativo estão ficando cada vez mais tênues, e o Hotwire Native é uma peça fundamental dessa transição.
Para desenvolvedores Rails, esta é uma oportunidade de levar suas habilidades ao próximo nível, criando experiências móveis completas sem abrir mão da simplicidade e eficiência que tornaram o framework tão popular.
A web-first não é apenas uma abordagem apenas técnica mas também é uma filosofia que permite a qualquer pessoa com uma boa ideia transforma-la em um produto real, de forma rápida e com o menor esforço possível.
E aí, como isso vai auxiliar seu projeto?