---
title: "Mobile Apps with Hotwire Native"
description: "Hotwire Native is our mobile technology of first choice - build iOS and Android apps from your existing Rails web screens instead of a separate native codebase."
url: "https://qameta.com/mobile-apps-with-hotwire-native/"
---

# Mobile Apps with Hotwire Native

[Hotwire Native](https://native.hotwired.dev/) is our mobile technology of
first choice for turning a Ruby on Rails web application into iOS and
Android apps, without standing up a separate native codebase and team.

## Why Hotwire Native?

Traditional native development means slow development cycles, large
specialized iOS and Android teams, building every feature twice, and waiting
on app store review for every fix. Hotwire Native removes most of that
friction:

* **Build your screens once, in HTML and CSS, and reuse them across every
  platform** - the same Rails views that power your web app power the app
* **Faster updates** - most fixes and features ship through your normal web
  deploy and skip app store review entirely
* **Small teams can ship real apps** - no separate native team required to
  have a "highly functional, beautiful, and sustainable" mobile app
* **Full native API access from day one** - camera, push notifications, and
  the rest of the native SDK are available immediately, not bolted on later

## How it works

Hotwire Native wraps a web view in a native iOS/Android shell that renders
the HTML your server already sends. Navigation and transition animations are
handled natively, so it feels like a native app even though the screens are
your existing web views. Where plain HTML/CSS isn't enough, we drop down to
Bridge Components or fully native screens for that specific part of the app
- without giving up the rest of the shared codebase.

It supports both iOS and Android, and it's the natural next step for any
project already built on Hotwire (Turbo + Stimulus) - the screens are already
there, we just wrap them.

## What we set up

* Wrapping an existing Rails/Hotwire application in native iOS and Android
  shells
* Bridge Components for the native features a web view can't cover on its own
  (camera, push notifications, biometrics, ...)
* App store and Play Store release pipelines, wired into
  [Continuous Integration](https://qameta.com/continuous-integration/) and
  [Continuous Delivery](https://qameta.com/continuous-delivery/) the same way as our web
  deployments
* Test coverage for the shared screens, following our approach to
  [Test Driven Development](https://qameta.com/test-driven-development/)

## Summary

If your product already runs on Rails, Hotwire Native gets you real iOS and
Android apps without duplicating the application in Swift and Kotlin - and
most updates reach users without waiting on a store review.

Want a mobile app without a separate mobile codebase? [Get in touch](mailto:info@qameta.com).
