WebLab PWA Suite turns any WordPress site into a Progressive Web App — installable, offline-capable, and mobile-optimized.
The plugin generates a valid Web App Manifest, registers a Workbox v7 Service Worker, and adds the platform-specific meta tags required for installation on Android, iOS, and desktop browsers.
A Progressive Web App provides a native-app-like experience directly from the browser:
The plugin includes a complete, professionally-designed install experience with 42 free features that work out-of-the-box:
Smart Banner
* Mobile-only banner (never annoying on desktop)
* Value proposition with 3 configurable bullet points (icon + text)
* Safe-area padding for iPhone notch
* Dark mode support (prefers-color-scheme)
* WCAG 2.1 AA accessible (ARIA, keyboard, focus trap)
Triggers (configurable)
* Time on page (default: 30 seconds)
* Scroll depth (default: 50%)
* Returning visitor (2nd+ visit)
* Exit-intent (desktop, optional)
* Custom trigger via JS API
Dismiss & Persistence
* “Later” button (temporary dismiss)
* “Never” button with 24h-720h cooldown
* localStorage persistence
* Progressive cooldown
Per-Platform Instructions
* iOS Safari: Share Add to Home Screen Add
* Android Chrome: menu Install app Install
* Desktop: install icon in address bar
* Special message for in-app browsers (FB/IG/TikTok/WhatsApp)
Desktop QR Code
* Scan with phone to install
* Shortcode: [afpwa_qr size=”200″ caption=”Scan me!”]
A/B Testing for Install Messages
* Up to 3 message variants (Free Install UX feature)
* Integrates with the analytics dashboard
* Auto-tracked conversion per variant
Push Opt-in Secondary
* Shown after app install (not before)
* GDPR-friendly
* Customizable title, body, preview
Analytics Dashboard
* Widget in WordPress Dashboard
* Tracks: banner shown, dismissed, installs, CTR
* Per-platform breakdown (iOS/Android/Desktop)
* CSV export
[afpwa_qr]).Premium features are available through a separate license and an external add-on plugin. The free version is fully functional on its own.
Premium licensing and updates are served from advancedpwa.weblab.md. See the External Services section for details.
This plugin includes the following third-party library:
The unminified source of the bundled Workbox runtime is available upon request or at the upstream repository above.
The plugin is developed on GitHub. Contributions, bug reports, and translations are welcome.
This plugin connects to the following external services. No data is transmitted unless the corresponding feature and consent are explicitly enabled by the site administrator.
Purpose: License validation, update delivery, and premium feature activation.
Data transmitted:
* License key (only the license key you entered)
* Site domain
* Anonymous install ID (32-character random string, generated locally on first activation)
* Plugin version
* Device fingerprint — a SHA-256 hash of the browser user agent, platform, language, and timezone
When: Only when the administrator explicitly enables “License Server” consent in Settings Consent & Privacy. The free version does not connect.
Frequency: On license activation, then re-validated every 12 hours.
Optional: Yes — the free version works fully without this connection.
Terms of Service: https://advancedpwa.weblab.md/terms/
Privacy Policy: https://advancedpwa.weblab.md/privacy/
Purpose: Delivery of browser push notifications.
Data transmitted: Subscription endpoint and encryption keys provided by the browser’s Push API.
When: Only when (a) push notifications are enabled by the administrator, (b) “Push Notifications” consent is enabled in Settings, and (c) the visitor explicitly opts in via browser prompt.
Optional: Yes.
Privacy Policy: https://firebase.google.com/support/privacy
Purpose: Site analytics (if enabled).
Data transmitted: Page views and events, as configured by your GA4 property.
When: Only when (a) GA4 is enabled in Premium settings, and (b) “Analytics” consent is enabled in Settings.
Optional: Yes — disabled by default.
Privacy Policy: https://policies.google.com/privacy
Purpose: Privacy-friendly analytics without cookies.
Data transmitted: Page views.
When: Only when (a) Plausible is enabled in Analytics settings, and (b) “Analytics” consent is enabled in Settings.
Optional: Yes — disabled by default.
Privacy Policy: https://plausible.io/privacy
Purpose: Alternative push notification provider.
Data transmitted: Push subscription data.
When: Only when (a) OneSignal is selected as the push provider, and (b) “Push Notifications” consent is enabled in Settings.
Optional: Yes — Firebase is the default.
Privacy Policy: https://onesignal.com/privacy_policy
Purpose: Country lookup for optional geo-blocking.
Data transmitted: The client’s IP address.
When: Only when (a) “External GeoIP lookup” is enabled, and (b) “GeoIP” consent is enabled in Settings. Disabled by default.
Optional: Yes.
Terms of Service / Privacy Policy: https://ip-api.com/docs/legal
Note: This lookup can be configured to run on the license server (WPLMP) or on the client (AFPWA). If neither is enabled, no data is sent.
The plugin stores the following data in your WordPress database:
The plugin provides:
When premium features are enabled, the license server receives the license key, domain, and a device fingerprint. The fingerprint is a hash, not personally identifying information. It is used exclusively for license verification.
WebLab PWA Suite is free software released under the GPL v2 or later license.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
Developed by WebLab.md.
Bundled third-party library:
* Workbox v7 — Copyright 2018 Google LLC — Apache License 2.0.