Turbo Native Quick Start

Rails 7 and Hotwire

As I mentioned in a previous post, Rails 7 is a real inflection point in terms of capabilities out of the box, the efficiencies and frankly a joyful development experience. You truly can get the speed and interactivity of a single-page web application without having to write any JavaScript.

High-fidelity hybrid apps

Turbo Native is a further part of the Hotwire ecosystem that enables development of hybrid apps, by wrapping a Rails 7 turbo-enabled webapp in a native iOS or Android shell. This gives you native navigation UI with all the client-side performance benefits of Turbo! Even more compelling, all your views and functionality “just works” from the webapp, and you can easily replace any pages with native screens as you see fit. Amazing.

Quick start (iOS)

What I find mind-boggling is I can get a simple native iOS app that wraps an existing Rails web app up and running in literally a matter of minutes.

Just follow the Quick Start Guide in the turbo-ios repo, change the web URL in the SceneDelegate to point to your web app URL, then build and run it in the simulator. Bingo!

Obviously this is a very basic example, but still, you should notice nice transitions between pages and the bare bones of a hybrid app in minutes.

Next steps

If this small example was enough to pique your interest as much as it did mine, I recommend digging in to the documentation but also to sign up for Joe Masilotti’s excellent newsletter. Joe has also shared some great articles - particularly this one titled Hybrid iOS apps with Turbo and some excellent YouTube tutorials. Highly recommended.

While I’ve not started to think about Android yet, I did read through a couple of William Kennedy’s articles and they look comprehensive and easy to follow so would recommend this as a start point.

Do let me know how you get on, or if you have other Turbo Native resources to recommend.

Demo App