# Despia Documentation ## Docs - [Attribution](https://setup.despia.com/analytics/appsflyer/attribution.md): Read where every user came from across TikTok, Meta, Google, affiliate, or organic using data injected by Despia on every page load. - [Campaigns](https://setup.despia.com/analytics/appsflyer/campaigns.md): Connect TikTok and Meta as integrated partners, create custom attribution links, and measure which campaigns drive the most valuable users. - [Deep Linking](https://setup.despia.com/analytics/appsflyer/deeplinking.md): Route users to specific pages inside the app from ad campaigns and creator affiliate links, even if the app was not installed at the time of the click. - [Events](https://setup.despia.com/analytics/appsflyer/events.md): Log standard and custom in-app events from your web layer. Standard af_ events automatically map to Meta and TikTok conversion events in their dashboards. - [Introduction](https://setup.despia.com/analytics/appsflyer/introduction.md): Track installs, attribution, and in-app events across TikTok, Meta, Google, and organic channels using the Despia AppsFlyer bridge. Currently available on iOS, with Android coming soon. - [Testing](https://setup.despia.com/analytics/appsflyer/testing.md): Confirm your AppsFlyer setup is working before you launch. No coding tools required. - [User Session](https://setup.despia.com/best-practices/backend/one-signal/user-session.md): This guide covers user identity management for push notifications using OneSignal in Despia apps. - [Cron Jobs](https://setup.despia.com/best-practices/backend/revenuecat/cron-jobs.md): Implement a self-healing subscription sync system using scheduled cron jobs as a backup to webhooks. This ensures your database stays synchronized with RevenueCat even when webhooks fail or are delayed. - [User Session](https://setup.despia.com/best-practices/backend/revenuecat/user-session.md): This guide covers user identity management for in-app purchases and subscriptions using RevenueCat in Despia apps. - [Webhooks](https://setup.despia.com/best-practices/backend/revenuecat/webhooks.md): Complete implementation guide for processing RevenueCat webhooks with authorization validation, event type handling, and entitlement management. - [User Session](https://setup.despia.com/best-practices/backend/user-session.md): This guide covers the general user identity management pattern for Despia apps. This system is the foundation that all SDK integrations (RevenueCat, OneSignal, Stripe, etc.) build upon. - [Animations](https://setup.despia.com/best-practices/frontend/animations.md): CSS animation first. Scroll-driven CSS for drawers, sheets, parallax, and page transitions. JS fallback only where CSS is not supported. - [Performance](https://setup.despia.com/best-practices/frontend/performance.md): Build applications optimized for 60fps performance that degrade gracefully under system constraints. This guide covers proven techniques for JavaScript execution, rendering optimization, memory management, and asset delivery. - [Structure](https://setup.despia.com/best-practices/frontend/structure.md): Essential patterns for building production-ready mobile applications with Despia. Learn how to structure root frames, handle device boundaries, implement scroll containers, and optimize touch interactions for native performance. - [Editor](https://setup.despia.com/best-practices/updates/editor.md): Changes made in the Despia editor affect the native binary. They require a rebuild and a new submission to the App Store and Google Play. - [Interface](https://setup.despia.com/best-practices/updates/interface.md): UI changes are the safest and most common use of OTA. They ship instantly, require no binary, and reach every user on the next app open. - [Logic](https://setup.despia.com/best-practices/updates/logic.md): Business rules, data handling, API integrations, state management, routing - all web layer. They ship via OTA, silently, with no review and no rebuild. - [Overview](https://setup.despia.com/best-practices/updates/overview.md): Getting OTA updates right means your app stays fast, your users stay unblocked, and you never give a reviewer a reason to push back. - [Changelog](https://setup.despia.com/changelog.md): New features, improvements, and fixes across the Despia platform. - [Automatic](https://setup.despia.com/deployment/apple-ios/automatic.md): Complete guide for building and publishing iOS applications using Despia - [Manual](https://setup.despia.com/deployment/apple-ios/manual.md): Complete guide for exporting and working with your Despia application as native Swift code. - [Automatic](https://setup.despia.com/deployment/google-android/automatic.md): Complete guide for building and publishing Android applications using Despia. - [Manual](https://setup.despia.com/deployment/google-android/manual.md): Complete guide for exporting and working with your Despia application as native Android code. - [Introduction](https://setup.despia.com/introduction.md): Native iOS and Android apps from web technologies. Framework-agnostic runtime with 30+ maintained native features accessible through a unified JavaScript SDK. - [Introduction](https://setup.despia.com/local-cdn/introduction.md): Technical deep dive into offline media caching with background downloads - [Reference](https://setup.despia.com/local-cdn/reference.md): Cache remote files locally for offline access with background downloads - [Introduction](https://setup.despia.com/local-database/introduction.md): Native local SQLite database with real-time backend sync for Despia apps. - [Reference](https://setup.despia.com/local-database/reference.md): Full API reference for @despia/powersync, query, write, watch, sync, and migrate. - [Introduction](https://setup.despia.com/local-server/introduction.md): Ship native iOS and Android apps that boot instantly and work completely offline by serving your web build from an on-device HTTP server. - [Reference](https://setup.despia.com/local-server/reference.md): Plugin installation, framework configuration, manifest schema, and troubleshooting for the Despia local server. - [How it Works](https://setup.despia.com/lovable/how-it-works.md): Add real native device features to your Lovable-generated app and deploy to App Stores - no native code required. - [MCP Server](https://setup.despia.com/mcp-server.md): Ship true native features for your web-native apps faster and with more precision using the Despia MCP. - [Interstitial Ads](https://setup.despia.com/native-features/admob/Iinterstitial.md): Display a full-screen native AdMob interstitial ad at a natural transition point in your app using the Despia SDK. - [Inline Ads](https://setup.despia.com/native-features/admob/inline-ads.md): Display AdMob ads natively inside your web UI, rendered directly within the page layout, not as a native overlay above or below it. - [Rewarded Ads](https://setup.despia.com/native-features/admob/rewarded-ads.md): Monetize your Lovable mobile app with native rewarded video advertisements that grant users in-app rewards. - [App Privacy](https://setup.despia.com/native-features/app-privacy.md): Check user privacy consent status for Apple's App Tracking Transparency (ATT), GDPR compliance, and privacy regulations in your Lovable application. - [App Settings](https://setup.despia.com/native-features/app-settings.md): Open your app's native settings page directly from within your Lovable mobile app to guide users to permission controls. - [Biometrics](https://setup.despia.com/native-features/biometrics.md): Add Face ID, Touch ID, and device passcode authentication to secure sensitive features in your Lovable application. - [Camera Roll](https://setup.despia.com/native-features/camera-roll.md): Save images directly to the device's photo gallery from your Lovable mobile app. - [Clipboard](https://setup.despia.com/native-features/clipboard.md): Retrieve clipboard content from users' devices within your Lovable application. - [Contact Access](https://setup.despia.com/native-features/contact-access.md): Retrieve and display contact information from users' devices within your Lovable application. - [Deeplinking](https://setup.despia.com/native-features/deeplinking.md): Configure universal links (iOS) and app links (Android) to enable direct app opening from web URLs in your Lovable mobile app. - [Device Indexing](https://setup.despia.com/native-features/device-indexing.md): Access the unique device identifier of native mobile devices in your Lovable application. - [External Links](https://setup.despia.com/native-features/external-links.md): Control how your app handles external links with custom routing for payments, OAuth, and deep linking - [File Sharing](https://setup.despia.com/native-features/file-sharing.md): Enable native file sharing capabilities in your Lovable mobile app, allowing users to share files of any type through their device's built-in sharing system. - [GPS Location](https://setup.despia.com/native-features/gps-location.md): Track a user's real-time location with configurable time intervals, distance thresholds, live frontend callbacks, and optional server delivery. - [Haptic Feedback](https://setup.despia.com/native-features/haptic-feedback.md): Add native tactile feedback to enhance user interactions in your Lovable mobile app. - [HealthKit](https://setup.despia.com/native-features/healthkit.md): Retrieve and display health and fitness data from users' Apple HealthKit within your Lovable application. - [Home Widgets](https://setup.despia.com/native-features/home-widgets.md): Display dynamic SVG content in iOS home screen widgets with real-time data updates and user personalization through your Lovable mobile app. - [Light & Dark Mode](https://setup.despia.com/native-features/light-and-dark-mode.md): Use CSS prefers-color-scheme and Despia's safe area variables to implement automatic light and dark mode. No JavaScript or SDK calls required. Just CSS and the right settings in the Despia editor. - [Apple Auth](https://setup.despia.com/native-features/oauth/apple.md): Sign In with Apple using the Apple JS SDK. Platform-aware: native Face ID on iOS, Chrome Custom Tabs on Android, popup on web. - [Google Auth](https://setup.despia.com/native-features/oauth/google.md): Sign In with Google using the Despia OAuth bridge. Opens ASWebAuthenticationSession on iOS and Chrome Custom Tabs on Android, with a standard popup on web. - [Introduction](https://setup.despia.com/native-features/oauth/introduction.md): How OAuth authentication works in Despia apps. Provider-agnostic, the same flow works for Google, Apple, TikTok, GitHub, or any OAuth 2.0 provider. - [TikTok Auth](https://setup.despia.com/native-features/oauth/tiktok.md): Sign In with TikTok using the Despia OAuth bridge. Opens ASWebAuthenticationSession on iOS and Chrome Custom Tabs on Android, with a standard redirect on web. - [Offline Push](https://setup.despia.com/native-features/offline-push.md): Send instant local notifications to users with customizable messages, titles, and timing through your Lovable mobile app. - [Introduction](https://setup.despia.com/native-features/onesignal/introduction.md): Send targeted remote push notifications to your users via OneSignal. Despia includes the native OneSignal SDK, no native code required. - [Reference](https://setup.despia.com/native-features/onesignal/reference.md): Complete reference for Despia OneSignal push notifications, schemes, parameters, backend API, and targeting. - [Print Documents](https://setup.despia.com/native-features/print-documents.md): Enable native printing capabilities in your Lovable mobile app, allowing users to print images and PDFs directly from their device using the device's built-in print system. - [Quick Actions](https://setup.despia.com/native-features/quick-actions.md): Create native mobile application shortcuts that allow users to access specific workflows in your Lovable app without even opening it. - [Introduction](https://setup.despia.com/native-features/revenuecat/introduction.md): Native App Store and Google Play billing in your web app via the Despia SDK and RevenueCat. - [Reference](https://setup.despia.com/native-features/revenuecat/reference.md): Complete reference for all Despia in-app purchase schemes, parameters, callbacks, entitlement checks, and webhook handling. - [Safe Areas](https://setup.despia.com/native-features/safe-areas.md): Handle device safe areas (notches, status bars, home indicators) using custom CSS variables for responsive mobile layouts in your Lovable application. - [Screen Brightness](https://setup.despia.com/native-features/screen-brightness.md): Control device scanning behavior with configurable modes (auto, on, off) and automatic screen brightness adjustment through your Lovable mobile app using the Despia SDK. - [Screenshot](https://setup.despia.com/native-features/screenshot.md): Capture full page screenshots and save them directly to the device's photo gallery through your Lovable mobile app using the Despia SDK. - [Share Dialog](https://setup.despia.com/native-features/share-dialog.md): Enable native social sharing capabilities with customizable message and URL parameters through your Lovable mobile app using the Despia SDK. - [Share Extension](https://setup.despia.com/native-features/share-extension.md): Access shared content (images and text) from other apps when your Lovable application is opened via share functionality. - [Simple Storage](https://setup.despia.com/native-features/simple-storage.md): Persist data directly on the user's device using simple read/write commands with the Despia SDK. - [Siri Shortcuts](https://setup.despia.com/native-features/siri-shortcuts.md): Enable Siri voice shortcuts with custom natural language commands that trigger JavaScript functions in your Lovable mobile app using the Despia SDK. - [Storage Vault](https://setup.despia.com/native-features/storage-vault.md): Encrypted persistent storage backed by iCloud Key Value Store on iOS and Android Key/Value Backup on Android. Survives uninstall and reinstall. - [Store Location](https://setup.despia.com/native-features/store-location.md): Access the user's current store location for location-based services, regional content, and localized experiences in your Lovable application. - [User Agent](https://setup.despia.com/native-features/user-agent.md): Detect whether your app is running in the Despia native runtime and identify the platform (iOS or Android) by checking the user agent string. - [Despia for Base44](https://setup.despia.com/platform-support/base44.md): Ship your Base44 app to the App Store and Google Play with native billing, push notifications, attribution, and offline support built in. - [Despia for Claude Code](https://setup.despia.com/platform-support/claude-code.md): Ship your Claude Code web app to the App Store and Google Play with native billing, push notifications, attribution, and offline support built in. - [Despia for Cursor](https://setup.despia.com/platform-support/cursor.md): Ship your Cursor-built web app to the App Store and Google Play with native billing, push notifications, attribution, and offline support built in. - [Despia for Lovable](https://setup.despia.com/platform-support/lovable.md): Ship your Lovable app to the App Store and Google Play with native billing, push notifications, attribution, and offline support built in. - [Despia for Replit](https://setup.despia.com/platform-support/replit.md): Ship your Replit web app to the App Store and Google Play with native billing, push notifications, attribution, and offline support built in. - [HealthKit](https://setup.despia.com/roadblocks/deployment/apple-i-os/health-kit.md): Your build failed after enabling HealthKit in the Despia editor. Here's why and how to fix it. - [Missing Item](https://setup.despia.com/roadblocks/revenue-cat/missing-item.md): Your paywall is empty or checkout isn't working. Products aren't loading. Here's how to debug it. - [Empty Pages](https://setup.despia.com/roadblocks/runtime/empty-pages.md): Your app loads but shows a blank white screen. Here's how to fix it. - [Lost Auth Tokens](https://setup.despia.com/roadblocks/runtime/lost-auth-tokens.md): Your users close the app and when they reopen it, they're logged out. Here's how to fix it. - [No OTA Updates](https://setup.despia.com/roadblocks/runtime/no-ota-updates.md): Your users aren't receiving OTA updates. Changes deployed to production don't appear in the app. Here's how to fix it. - [OAuth Failures](https://setup.despia.com/roadblocks/runtime/o-auth-failures.md): OAuth not working in your Despia native app? This guide focuses on the key difference between web OAuth and Despia native OAuth. - [Slow Apps](https://setup.despia.com/roadblocks/runtime/slow-apps.md): Your Despia app feels sluggish. Here's how to fix it. - [Wrong Framework](https://setup.despia.com/roadblocks/runtime/wrong-framework.md): Why Despia is its own native runtime, and how to configure AI tools to work with it correctly. - [AI Processing](https://setup.despia.com/store-rejections/common-rejection/ai-processing.md): Your app was rejected because it processes user data with AI without proper consent. Here's how to implement Apple's required AI consent flow. - [Blank Screen Redirects](https://setup.despia.com/store-rejections/common-rejection/blank-screen-redirects.md): Your app was rejected because it shows a blank or white screen during authentication. Here's how to fix it. - [Deceptive Paywalls](https://setup.despia.com/store-rejections/common-rejection/deceptive-paywalls.md): Your app was rejected because the paywall is misleading or uses dark patterns. Here's what reviewers flagged and how to fix it. - [In-App Purchases](https://setup.despia.com/store-rejections/common-rejection/in-app-purchases.md): Your app was rejected for issues with in-app purchases. Here's what went wrong and how to fix it. - [Minimum Functionality](https://setup.despia.com/store-rejections/common-rejection/minimum-functionality.md): Your app was rejected for not meeting minimum functionality requirements. Here's what that means and how to fix it. - [Non-Mobile Design](https://setup.despia.com/store-rejections/common-rejection/non-mobile-design.md): Your app was rejected because it looks like a website instead of a native mobile app. Here's how to fix it. - [Privacy Policy](https://setup.despia.com/store-rejections/common-rejection/privacy-policy.md): Your app was rejected because of a missing or inadequate privacy policy. Here's what's required and how to fix it. - [Social Login Options](https://setup.despia.com/store-rejections/common-rejection/social-login-options.md): Your app was rejected because it offers social login without including the platform's native option. Here's how to fix it. - [Spam and Copies](https://setup.despia.com/store-rejections/common-rejection/spam-and-copies.md): Your app was rejected because it's too similar to existing apps. Here's how to differentiate and get approved. - [Tracking Transparency](https://setup.despia.com/store-rejections/common-rejection/tracking-transparency.md): Your app was rejected for issues with Apple's App Tracking Transparency (ATT). Here's what went wrong and how to fix it. - [User-Specific Data](https://setup.despia.com/store-rejections/common-rejection/user-specific-data.md): Your app was rejected because it collects personal data that isn't necessary for its functionality. Here's how to fix it. - [Introduction](https://setup.despia.com/store-rejections/introduction.md): Your app got rejected. Take a breath. This is normal, fixable, and part of shipping apps. ## OpenAPI Specs - [openapi](https://setup.despia.com/api-reference/openapi.json) Built with [Mintlify](https://mintlify.com).