Your Rails app, in the App Store.
No Xcode. No native code.
Ruby Native turns your existing Rails website into a native iOS app. Configure with YAML, preview on your iPhone, and ship to the App Store.
Framework agnostic
Hotwire, React, Inertia, or whatever you're building with. Ruby Native wraps your existing frontend in a native shell. No rewrites required.
# config/ruby_native.yml
app:
name: "Daily Grind"
appearance:
tint_color: "#5C3D2E"
background_color: "#FAF7F2"
tabs:
- title: "Menu"
path: "/menu"
icon: "cup.and.saucer"
- title: "Orders"
path: "/orders"
icon: "bag"
- title: "Rewards"
path: "/rewards"
icon: "star"
- title: "Account"
path: "/account"
icon: "person"
# config/ruby_native.yml
app:
name: "Habits"
appearance:
tint_color: "#4F46E5"
background_color: "#FFFFFF"
tabs:
- title: "Today"
path: "/today"
icon: "calendar"
- title: "Habits"
path: "/habits"
icon: "list.bullet"
- title: "Profile"
path: "/profile"
icon: "person"
Everything you need
Ruby Native handles the hard parts of mobile app development so you can focus on your Rails app. No Swift or Xcode required.
Define your app name, colors, tab bar, and navigation in a single YAML file. Change a value, hit refresh, see the update on your phone.
Run native_rails preview and scan a QR code. See your app running on your phone in under a minute.
Works with Hotwire, React, Vue, Stimulus, or plain ERB. Ruby Native wraps your existing web app in a native shell.
A real native tab bar using first party APIs. Defined in YAML, rendered by iOS. Feels like a native app because it is one.
Submit to the App Store without installing Xcode. We handle code signing, builds, and store submission.
Use native_app? in your views to show or hide content for mobile app users. One codebase, three experiences.
How it works
Your Rails server renders HTML
Nothing changes about your backend. Keep using your existing views, controllers, and frontend framework.
The native app loads your site
A real iOS app with a web view, not a PWA. It shows up in the App Store with its own icon and launch screen.
Native features layer on top
The gem's view helpers communicate with the native shell. Add a tab bar, push notifications, and more with ERB tags.
Deploy Rails, update the app
Change your views and deploy like normal. No App Store review needed for content changes. Only rebuild for native config changes.
No mobile team required
Skip the $150k mobile hire. Ship your Rails app to the App Store for less than a single hour of contractor time.
$29 /month
For solo developers and side projects.
One-click App Store deployment
Never open Xcode
1,000 monthly active users Unique devices in a rolling 30-day window. You'll get a heads-up at 80%. If you hit the limit, you have a few days to upgrade before your app is paused.
Email support
$99 /month
For growing apps ready to scale.
One-click App Store deployment
Never open Xcode
Unlimited monthly active users
Email support
$399 /month (billed annually)
For teams that want hands-on help.
Everything in Pro
We handle your App Store review
Hands-on setup from the founder
Same-day support via Slack or email
From a developer teams trust
"Joe has been instrumental in building the Hotwire Native libraries with the team at 37signals."
Jay Ohms
Mobile Team Lead, 37signals
"Joe's expertise and collaborative spirit makes him a standout partner. He seamlessly helped us build native apps the Rails way."
Doyle Baxter
CTO
"Joe brought thoughtful documentation, quick turnaround on issues, and a calm confidence that made the whole process feel smooth."
Franco Marcano
Head of Engineering, Strety
Can't find what you're looking for? Send me an email and I'll get back to you.
PWAs don't get a real presence in the App Store. Ruby Native gives you a real native app with a native tab bar, push notifications, and an actual store listing. Users find you in the store, not via a browser prompt.
Hotwire Native gives you more control but requires writing Swift code. Ruby Native is for teams who want to be in the App Store without touching native code.
Capacitor requires you to maintain a full Xcode project. Ruby Native is config-driven. You never open an IDE, never write Swift, and never manage native dependencies. Just YAML and Ruby.
Yes. Ruby Native apps include native components that satisfy Apple's guideline 4.2 (Minimum Functionality): a native tab bar, push notifications, and proper app assets. These are what separate a real app from a wrapped website in Apple's eyes. We've shipped 25+ apps through App Store review. The Business plan includes review assistance if you run into issues. Learn more about App Store review.
Yes. Ruby Native works with any Rails app regardless of frontend framework. Hotwire, React, Vue, Stimulus, or plain ERB. Add the gem, run the generator, and you're up and running.
No. Cloud builds handle everything. You push your config, we compile the app, sign it, and submit it to the store. All from your Rails project, on any operating system.
Yes. Apple requires a $99/year membership to publish apps. You don't need it to preview your app, but you'll need it before your first cloud build.
Any unique device that opens your app in a rolling 30-day window. If the same person opens it 50 times, that's one MAU. You'll get a heads-up email at 80% of your limit. If you hit 1,000, you'll have a few days to upgrade to Pro before your app is paused for end users.
Android support is on the roadmap, and your Rails backend won't need to change when it arrives. Email me if you want to beta test when it goes live.
Ruby Native is the starting point, not a dead end. If you outgrow YAML configuration, graduate to Hotwire Native for deeper native control, or go fully native. Your Rails backend stays mostly the same at every step. There's no lock-in and no rewrite. Book a mobile playbook if you want help planning the next step.
Add the gem, configure with YAML, and preview on your phone. No native code, no Xcode, no hassle.