A progressive web app installs from the browser and never touches the app stores. Ruby Native puts the same Rails app in the App Store and Google Play as a native app, with native navigation and push notifications on both platforms. This page is the trade-off in each direction.
A PWA is your website with a manifest and a service worker. On Android, Chrome offers to install it. On iOS, the user adds it to the Home Screen from Safari's share sheet, and Safari never prompts for that on its own. Once installed it opens full screen with its own icon.
Since iOS and iPadOS 16.4, a web app on the Home Screen can request permission for push notifications, as long as the request comes from a tap, and it can set a badge on its icon. In a Safari tab, neither works. On Android, both have worked for years.
There is no review, no listing, and no store fee. There is also no presence where people search for apps. Google Play will accept a PWA packaged as a Trusted Web Activity. The App Store has no equivalent, so on iOS a PWA stays a Home Screen shortcut.
If that is your situation, a PWA costs nothing and Ruby Native is not the next step. The two are not exclusive, either. A Rails app with a web manifest keeps working as a PWA on the web, and Ruby Native ships the same app to the stores.
Ruby Native is for the moment someone asks "when's the app coming?" and means the one in the store.
| PWA | Ruby Native | |
|---|---|---|
| Where users get it | Your site, or Google Play as a Trusted Web Activity | App Store and Google Play |
| Install on iOS | By hand, from Safari's share sheet | From the App Store |
| Navigation | The browser's | Native tab bar, native transitions in Advanced Mode |
| Push notifications | Android, and iOS only after a Home Screen install | Both platforms, registered with your Rails app |
| Store review | None | Apple's and Google's, which the app is built to pass |
| Cost | Free | $199 a month per app, plus the stores' own fees |
Nothing about a PWA has to change to add Ruby Native. The manifest and service worker stay for web users. You add Ruby Native to the Gemfile, run the generator, and the app is on your phone. The setup guide is the whole path.
The business comparison, against hiring a mobile team, an agency, or a React Native rebuild, is on Why Ruby Native. Try the demo app on your phone from /try, or email Joe at [email protected] with your app's URL.