Introduction
inertia-native lets an Inertia.js application run inside Hotwire Native (iOS & Android) and behave like a native app.
Unofficial
This is a community-built integration. It is not an official Inertia.js or Hotwire project.
How it works
Hotwire Native injects a turbo.js script into every web view that expects a window.Turbo object to drive. This package installs a small shim that maps the native adapter protocol onto Inertia's router, so Inertia pages push, pop, and restore as native screens — plus a web bridge so Inertia pages can use native bridge components (submit buttons, menus, etc.).
In a regular browser it stays inert: with no native adapter connected, Inertia navigates exactly as usual.
Entry points
- Framework-agnostic core (
inertia-native) — peer-depends on@inertiajs/core. Handles all navigation. - Bridge component bindings — optional, each peer-depends on its framework and provides
useBridgeComponent:inertia-native/reactinertia-native/vueinertia-native/svelte
The ecosystem
| Repository | What it is |
|---|---|
| inertia-native | The npm package |
| demo-rails | Web / Rails demo app |
| demo-ios | iOS Hotwire Native shell |
| demo-android | Android Hotwire Native shell |
Next: Installation.