Skip to content
WebViewGold Vibe Coding to App Store
English
Get WebViewGold

Windsurf + push notifications

Push notifications for your Windsurf app

Browser web push on iOS only works for home-screen web apps and most users never see it. As a native app built with WebViewGold, your Windsurf app gets the real thing: system push notifications on iOS and Android, sent from your backend, from a dashboard, or scheduled by your own JavaScript.

From $109 one-time per platform, or let our team do it all from $698.

  • Approval guarantee – or money back within 14 days
  • No coding needed
  • One-time payment, free updates
  • 24/7 human support
  • Made in Germany since 2014 · ISO 27001

Three ways to notify your users

Remote push (OneSignal, Pushwoosh or Firebase)

Send campaigns from a dashboard or trigger messages from Your own API or serverless functions via their REST API. Segment users, schedule sends, track opens. WebViewGold ships with the integrations; you paste your app IDs into Config.swift and Config.java (or the Cloud Builder).

Local push from JavaScript

Schedule a notification from your Windsurf app with one URL call, for example a reminder in two hours or a cart recovery message. Fires even after the app was closed. Works without any push service.

Permission at the right moment

Trigger the system permission dialog from a link (registerpush://) when the user has a reason to say yes instead of on first launch, and read the permission state with checkNativePushPermissions:// (JavaScript variable nativePushEnabled).

Prompt for Windsurf

Paste this into Windsurf to implement the web-app side. Review the result, publish, then test inside the WebViewGold app.

Prompt for Devin Local
Prompt for Devin Local: Add native push notification support for the WebViewGold app wrapper. Create a Notifications settings page with an Enable notifications button that navigates to registerpush:// only when navigator.userAgent contains my custom WebViewGold token; in other browsers show a short note. After login, read the global onesignalplayerid variable (set window.location.href to getonesignalplayerid:// once if it is undefined) and send it to a register endpoint that stores player_id, user_id and platform in our database. Add a serverless function send-push for our host (Netlify Function, Vercel Function or Cloudflare Pages Function) that calls the OneSignal REST API with ONESIGNAL_REST_API_KEY from the environment. Add a cancel action that navigates to sendlocalpushmsg://push.send.cancel. Then commit and push to the branch our host deploys to production.

With a good optimized version of your web app you can have a stunning mobile app within a couple of minutes. Additionally to that the customer service is very nice and very helpful! I can just recommend WebViewGold :-)

Julian Koch · Co-Founder of DuelDonkey · CodeCanyon

Set up push for a Windsurf app

About 20 minutes for both platforms.

  1. Create a free OneSignal (or Pushwoosh) app

    Add an iOS app with your Apple push key (.p8 from the Apple Developer portal) and an Android app with your Firebase Cloud Messaging credentials. Both dashboards walk you through it.

  2. Paste the IDs into WebViewGold

    Enable the push option in Config.swift and Config.java (or the Cloud Builder form) and insert your OneSignal App ID. Decide whether to ask for permission at first launch or later via registerpush://.

  3. Identify users from your Windsurf app

    WebViewGold exposes the push subscription ID to your web app as a JavaScript variable (onesignalplayerid after calling getonesignalplayerid://) or appends it to your URL as ?onesignal_push_id=…. Store it next to the user in Your own API or serverless functions so your backend can target individual users.

  4. Send from your backend

    Call the OneSignal REST API from Your own API or serverless functions whenever something happens: new message, order update, reminder. Or send campaigns manually from the dashboard.

  5. Deep-link the notification

    Attach a url field to each push; WebViewGold opens that page inside the app when the user taps the notification.

Local push: the JavaScript call

No push service needed. From your Windsurf app, schedule a notification that fires even after the app is closed:

javascript
var title = "Your session starts soon";
var message = "Tap to open your dashboard.";
var seconds = 7200;                        // fire in two hours
var url = "https://yourapp.com/dashboard"; // opened when tapped
window.location.href = "sendlocalpushmsg://push.send?s=" + seconds + "=msg!" + message + "&!#" + title + "&!#" + url;

// cancel everything that is scheduled
// window.location.href = "sendlocalpushmsg://push.send.cancel";

What to tell Windsurf

  • Add a notification settings screen with an "Enable notifications" button that navigates to registerpush:// only inside the app (WebViewGold identifies itself via a custom user agent you define in the config).
  • Read the push subscription ID that WebViewGold provides and save it on the user profile in Your own API or serverless functions.
  • Create a backend function that calls the OneSignal REST API with the user's subscription ID when an event happens.
  • Add a ?utm_source=push parameter to notification URLs so your analytics can attribute opens.

Frequently asked questions

Does web push from Windsurf work inside the app?

Browser web push (service worker based) is not what the stores and users expect from an app. WebViewGold uses native APNs and FCM notifications, which show up in the system notification center, support badges and sounds, and work on every iPhone.

Is OneSignal free?

OneSignal has a free tier that covers most new apps; Pushwoosh offers WebViewGold customers two free months. Local push notifications are free and need no service at all.

Do push notifications help with App Store review?

Yes. Guideline 4.2 asks for functionality beyond a website; native push notifications are a concrete, user-facing native feature.

Can I send a push to one specific user?

Yes. Map the subscription ID WebViewGold exposes to the user record in Your own API or serverless functions and target that ID through the OneSignal API.

Three ways to get your app into the stores

Same result, different amount of work on your side. All three come with the approval guarantee and 24/7 human support.

Do it yourself

$109 per platform, one-time

The WebViewGold license: a finished Xcode or Android Studio project. Paste your URL, set name and icon, switch on features, build and submit. Free updates forever.

See plans on the main page

Cloud Builder

$349 per license, one-time add-on

No Mac, no Xcode, no Android Studio: configure in the browser, we build both apps in the cloud and hand them to App Store Connect and the Play Console.

How the Cloud Builder works Try the free demo

Full Service

$698 per platform $798

Send us your URL and icon. Our team configures, builds and delivers your app within 72 hours, white-label, with source projects. Both platforms for $1,158.

Full Service details Powered by WeSetupYourWebViewApp

Winter Sale prices valid until December 31, 2026.

Ready to ship your Windsurf app?

App Store & Google Play approval guarantee – or your money back within 14 days

Rather hand it over? Full Service: we configure, build and deliver within 72 hours, from $698 per platform. Questions? Chat with us 24/7.

Refunds are granted under the conditions listed in our FAQ: a non-content rejection by Apple and/or Google, claimed within 14 days after purchase.