How it works
Despia loads your web app inside a native Swift and Kotlin shell. Your existing code runs as-is. Native capabilities are exposed viadespia() calls from your existing JavaScript.
Point Despia at your deployed web app URL and click publish from the dashboard. Despia manages signing, provisioning, and submission to both stores.
In-app purchases, built in
Apple and Google require their own billing systems for digital content. Implementing this natively means integrating StoreKit for iOS and Google Play Billing for Android, two separate native SDKs in Swift and Kotlin. Despia includes RevenueCat as a built-in, accessible from your web layer.entitlementId, no platform-specific code.
Push notifications, built in
OneSignal is included. No APNs certificates, no Firebase project, no native SDK setup:include_external_user_ids.
Install attribution and ad analytics, built in
AppsFlyer ships with every Despia app. Injected automatically on every page load:Offline support
Add@despia/local to serve your app from http://localhost on the device after first launch. Full offline capability, instant boot, no service worker complexity.
One codebase
Your web app is the source of truth. iOS, Android, and web all run the same code. Changes deploy to all three simultaneously via OTA, no native project to maintain alongside your web codebase.Using Claude Code with Despia
The AI prompts on each Despia feature page are designed to work with any AI coding assistant. Paste the prompt from the feature page into your Claude Code session and it will installdespia-native, detect the runtime, implement the feature, and handle the web fallback.
In-App Purchases
RevenueCat built in
Push Notifications
OneSignal built in
AppsFlyer
Attribution built in
Native Features
All despia() capabilities