Add an install prompt to Ruby on Rails

To add an install prompt on Ruby on Rails, paste the InstantPWA snippet into app/views/layouts/application.html.erb via application.html.erb <head>. The popup captures the browser's native install signal where supported and falls back to a guided walkthrough on iOS Safari, so every visitor sees a clear path to installing your Ruby on Rails site as an app.

Steps

  1. 1

    Open app/views/layouts/application.html.erb

    Go to application.html.erb <head>.

  2. 2

    Paste the InstantPWA snippet

    Drop the one-line async script tag in the Ruby on Rails head section — no build step or dependency install.

  3. 3

    Configure the trigger

    In your InstantPWA dashboard, set when the popup appears — on page load, after N seconds, or after a scroll/engagement threshold.

  4. 4

    Publish

    Save/publish in Ruby on Rails so the change goes live — most builders require an explicit publish step before custom code runs.

  5. 5

    Verify on a phone

    Open your live Ruby on Rails URL on a mobile device (not the editor preview) to confirm the popup renders.

Constraints to know

  • Turbo Drive keeps the <head> element persistent across page-to-page navigation, so the snippet initializes once per session rather than re-running on every Turbo visit — this is a feature, not a bug, but means you should test with a full page load first.
  • The script tag doesn't need to be pinned in config/importmap.rb since it's a plain external <script>, not an ES module import.

FAQ

Does the install prompt work on iOS Ruby on Rails visitors?+

iOS Safari never fires the native beforeinstallprompt event, so InstantPWA shows a share-sheet walkthrough instead — visitors still get a clear add-to-home-screen path.

Will this conflict with other scripts on my site?+

No — InstantPWA is a single first-party async script with no third-party dependencies, so it doesn't block or compete with analytics or chat widgets.

Do I need to touch anything else in Ruby on Rails besides application.html.erb <head>?+

No — the head snippet is the only integration point; InstantPWA hosts the manifest and service worker for you.

Ready to set this up on Ruby on Rails?

1,000 free impressions. No credit card.

Get started