Skip the App Store
Ship Faster with PWA
CloudSignal PWA + Push gives you native app capabilities without app store fees or review delays. Setup wizard included.

How CloudSignal PWA + Push Works
From web app to native-like experience in three steps
PWA Wizard
Our setup wizard generates your manifest.json, service worker, and icons. One-click PWA configuration.
Push Setup
Configure push notifications in the dashboard. We handle VAPID keys, Web Push, FCM, and APNs.
Smart Delivery
Presence API routes notifications: in-app when online, push when offline. Zero duplicates.
Complete setup in under 2 minutes
Our guided wizard walks you through every step

Name your PWA and set contact info
Online? In-App. Offline? Push.
Presence API detects if users are active. No duplicate notifications.
Supported Everywhere
Push notifications work across all major browsers and platforms
Works with your stack
Whether you're building with code or no-code, CloudSignal integrates seamlessly
Plus: Lovable, Bolt, Replit, Framer, and any web app with JavaScript
Simple API
Subscribe users and send notifications with just a few lines of code
Subscribe Users
// Subscribe user to push notifications
const registration = await navigator.serviceWorker.register('/sw.js')
const subscription = await registration.pushManager.subscribe({
userVisibleOnly: true,
applicationServerKey: 'YOUR_VAPID_PUBLIC_KEY'
})
// Send subscription to CloudSignal
await fetch('https://api.cloudsignal.app/v1/push/subscribe', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
subscription,
topics: ['alerts', 'updates'],
userId: 'user_123'
})
})Send Notifications
// Send push notification via API
await fetch('https://api.cloudsignal.app/v1/push/send', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
topic: 'alerts',
notification: {
title: 'New Alert',
body: 'Your sensor detected motion',
icon: '/icon-192.png',
badge: '/badge.png',
data: {
url: '/dashboard/alerts',
alertId: 'alert_456'
}
}
})
})
// Or send via MQTT
client.publish('push/alerts', JSON.stringify({
title: 'New Alert',
body: 'Your sensor detected motion'
}))Perfect For
Simple, Predictable Pricing
Start free, scale as you grow
Skip the App Store. Ship Your PWA Today.
Push notifications, smart routing, and native-like experience—without the $124/year in store fees or app review delays.
Free tier: 1,000 push notifications/month • No credit card required