Compared to other approaches

Ruby Native is one of several ways to get a Rails app onto phones. Each of the others is a fine choice for some teams, so here is the trade-off in each direction, in a paragraph each. The business comparison, against hiring a mobile team, an agency, or a React Native rebuild, is on Why Ruby Native.

#A PWA

A progressive web app installs from the browser and never touches the app stores. That is its strength and its ceiling: no review, no listing, and no presence where people search for apps. It also has no native tab bar, limited push notifications on iOS, and none of the native controls that make an app feel at home. Ruby Native gives you the same web screens inside a real native app with a store listing, native navigation, and push notifications on both platforms.

#Capacitor

Capacitor wraps a web app in a native shell too, but the shell is yours: a full Xcode project and an Android Studio project to maintain, with native dependencies to update every time iOS and Android move. Ruby Native keeps the shell on our side. You configure it in YAML, builds run in the cloud on the current Xcode and Android SDK, and each new OS release is handled once for every app. You can still download the native projects at any time, and they are ordinary Xcode and Android Studio projects.

#Hotwire Native

Hotwire Native is the open-source library from 37signals that Ruby Native's Advanced Mode runs on, and the right choice when you want to write native code: custom screens in Swift and Kotlin, your own navigation rules, a native layer you own. Ruby Native is for teams that want the stores without touching Swift or Kotlin. Everything the native shell needs lives in config/ruby_native.yml and a few view helpers, and the app store work runs from the CLI, the dashboard, or a coding agent. If you outgrow that, the source you download is a normal Hotwire Native project, so graduating is a handoff rather than a rewrite.

#A coding agent writing the Hotwire Native app

An agent can hand you a working Hotwire Native shell in an afternoon. What it cannot do is maintain it: certificates and profiles, App Store review, the keyboard quirks of older Android WebViews, an OAuth cookie that routes sign-in to the wrong app, and whatever September's iOS release changes. The gem's changelog is the running list of what an agent-written shell would ship with until your users found it. Ruby Native is priced against that fifth year, not the first afternoon.