revenuecat-paywall
revenuecat-paywall: display a RevenueCat paywall
Use this skill when the user wants to show a paywall that is built and configured in the RevenueCat dashboard, using the native RevenueCatUI components. This skill does not cover building a custom paywall from scratch. For that, use revenuecat-purchase-flow and Purchases.getOfferings(…) directly. If the user has not chosen between the two, see integrate-revenuecat, Section 5c. To create, edit, evaluate, or audit the dashboard paywall, use revenuecat-paywall-design.
Prerequisite: integrate-revenuecat has already run. Purchases.configure(…) must succeed before a paywall can load.
1. Detect the platform
Inspect the working directory and pick the first match, from top to bottom:
- React Native:
package.jsonhas areact-native-purchasesentry, orreact-nativeas a dependency.react-native-purchases-uiis the paywall package. Readplatforms/react-native.md. Ifexpois also a dependency, note it as an Expo project. - Flutter:
pubspec.yamlexists at the project root. The paywall package ispurchases_ui_flutter. Readplatforms/flutter.md. - Kotlin Multiplatform:
build.gradle.ktscontains akotlin { … }multiplatform source sets block, or depends oncom.revenuecat.purchases:purchases-kmp*. The paywall module ispurchases-kmp-ui. Readplatforms/kmp.md. - Android (native):
build.gradle(.kts)appliescom.android.application(and is not KMP). The paywall dependency iscom.revenuecat.purchases:purchases-ui. Readplatforms/android.md. - iOS (native):
Package.swift,*.xcodeproj,*.xcworkspace, orPodfileat the project root. The paywall product isRevenueCatUI. Readplatforms/ios.md.
If several match (e.g. an ios/ folder inside a Flutter project), pick the outermost project, the one that owns the build. If still ambiguous, ask the user which platform they want to configure.