Expo-first setup
No manual native edits. Config plugin, EAS/Dev Client friendly, Expo Router compatible.
Attestation built-in
Play Integrity and DeviceCheck reduce spoofed tokens and leaked keys.
Cloud handled
Token storage, targeting, scheduling, and sending without wiring your own backend.
Metadata-ready
Installation ID, app version/build, locale, timezone, and device model when available.
Quick Start
Install
npm install pushwave-client + expo-notifications. Add the config plugin.
Persist installationId
Optional but recommended: install expo-secure-store to keep a stable installationId across restarts.
Attach metadata
Optional: expo-application, expo-device, and expo-localization enable version/build, model, locale, and timezone.
Initialize
Call PushWaveClient.init({ apiKey }) once on startup. In dev, check logs for debug info.
Guides
Technical references for Expo push notifications, token behavior, and delivery flow.
Expo notifications explained
Understand tokens, the Expo push service, and FCM/APNs delivery.
Expo push notifications
End-to-end integration, scheduling, and secure delivery.
Expo push notifications without a backend
Ship pushes without queues, cron jobs, or storage.
Expo push tokens explained
Token lifecycle, storage hygiene, and cleanup best practices.
Status & Onboarding
- Dashboard live at https://pushwave.dev/ for audiences, templates, and scheduled sends.
- Backend attestation validation is live and can be toggled per project.
- Client SDK tested on Expo SDK 54; requires native builds (EAS/Dev Client).
- Optional metadata packages enable version/build, model, locale, and timezone.
