Your existing Rails app, wrapped in a real native shell, no Swift or Kotlin required.
Ruby Native turns the Rails app you already have into real apps in the App Store and Google Play. You keep your controllers, your views, and whatever frontend you like: Turbo, React, plain Rails, or HTMX. A YAML file and a handful of ERB helpers add the native pieces on top: a tab bar, push notifications, an app icon, a launch screen, and a store listing.
It's built on Hotwire Native, the open-source library that has powered Basecamp and HEY in production since 2017.
- 10 minutes From
bundle addto seeing your app on your phone. - 1 codebase Your Rails app powers web, iOS, and Android.
- 0 lines of native code Just write Ruby and YAML.
Try the demo app on your iPhone to get a feal for Ruby Native: rubynative.com/try.
Add the gem and run the generator:
$ bundle add ruby_native
$ bin/rails generate ruby_native:installConfigure your app in config/ruby_native.yml:
appearance:
tint_color: "#4F46E5"
background_color: "#FFFFFF"
tabs:
- title: Home
path: /
icon: house
- title: Profile
path: /profile
icon: personDrop native features into your layout as ERB tags:
<%= native_tabs_tag %>Preview it on a real device without deploying anything:
bundle exec ruby_native previewThat starts a tunnel and prints a QR code. Scan it with the Ruby Native app and your Rails app shows up in a native shell on your phone.
demos: Example Rails apps across Turbo, React, and plain Rails
Ruby Native is built by Joe Masilotti, author of Hotwire Native for Rails Developers and a developer who has shipped 30+ apps on the underlying technology.