Prefácio
Se você ainda está em dúvida sobre criar aplicações nativas utilizando Ruby on Rails e Hotwire Native, vou te dizer algo agora que pode parecer um pouco confuso, mas vai fazer total sentido à medida que você avançar no livro:
“Não se trata de criar apps nativas que rodam o Rails, mas sim apps Rails que funcionam da melhor forma como nativas.”
Como assim?
A ideia é construir uma aplicação Rails que funcione muito bem em dispositivos móveis, utilizando recursos nativos (como modais, botões e outras funcionalidades) quando necessário . A aplicação iOS será apenas a plataforma que permitirá entregar tudo que implementarmos no Rails.
Apenas iOS?
Para este livro, sim. Minha ideia é que em breve uma versão para Android também seja disponibilizada, mas os conceitos vistos aqui sobre o Rails, Hotwire e Hotwire Native se aplicam também para o Android (levando em consideração as diferentes nuances entre as plataformas).
Por que este livro?
Depois de um ano estudando e aplicando o Hotwire Native (antigo Turbo Native) em projetos reais, resolvi escrever este livro para compartilhar o que aprendi. A proposta é te guiar na criação de aplicações Rails integradas ao Hotwire Native, focando exclusivamente na plataforma iOS.
E por que iOS? Porque o processo é praticamente o mesmo para Android, e em breve espero publicar uma outra versão focada apenas em Android. Por enquanto, o foco será criar seu primeiro, segundo ou até terceiro app Rails com integração nativa no iOS.
O que veremos?
Antes de escrever qualquer linha de código, vamos entender os conceitos essenciais. Exploraremos o que é o Hotwire Native e como ele se conecta ao Rails por meio do Hotwire (com Turbo e Stimulus).
Na sequência, partiremos para a prática:
Criaremos uma aplicação Rails na versão 8 com funcionalidades básicas.
Configuraremos uma aplicação iOS e instalaremos o pacote Hotwire Native iOS.
Integraremos as duas aplicações, implementando interações nativas de forma incremental entre o Rails e o app iOS.
CSS customizado dependendo da plataforma (web/nativa).
Path Configuration.
Bridge Components.
Dicas finais sobre o que vem a seguir.
O objetivo é simples: mostrar como o Rails pode ir além do tradicional desenvolvimento web e ser a base para entregar experiências nativas boas o suficiente para grande parte dos casos em que precisamos de uma aplicação nativa, tudo utilizando a última versão do Hotwire Native!
Requisitos
É importante mencionar que para criar aplições iOS é necessário ter o XCode instalado, e pra ter o XCode instalado é necessário uma máquina que rode o MacOS.
Ruby e Rails instalados na sua máquina, especificamente neste livro vou utilizar a versão 3.3.5 do Ruby e a versão 8.0.1 do Rails.
Conhecer o básico do Rails também é importante, apesar de não ser uma coisa que vá te impedir de entender os principais conceitos do livro.
O que espero?
Espero que este livro te inspire a explorar o potencial do Hotwire Native e a enxergar o Rails como uma solução que pode funcionar tão bem no universo nativo quanto já funciona na web.
Aproveite a leitura e mãos à obra! 🚀