DEV Community

LaunchApp Studio
LaunchApp Studio

Posted on

LaunchPaywall – Open-source Swift 6 boilerplate for iOS paywalls and auth

Hi all! I built LaunchPaywall to solve a recurring friction point: re-implementing authentication, StoreKit logic, and localized UI layouts every time I start a new iOS side project.

It is a production-ready, open-source (MIT) SwiftUI boilerplate targeting iOS 17+ and written in clean Swift 6.

Key Technical Decisions & Architecture:

Swift 6 & Modern Concurrency: Built entirely with strict concurrency enabled, using @observable, @Environment, and @MainActor state management.

StoreKit & Subscriptions: Integrated with RevenueCat v5 for paywalls, package purchases, purchase restoration, and identity syncing (logIn/logOut). Includes a local #if DEBUG mock state so you can test paywalls in Xcode without active network calls or StoreKit credentials.

Authentication: Native Sign in with Apple flow backed by Keychain persistence via the Security API.

Localization: Built on Apple's String Catalog (.xcstrings) with 6 pre-translated languages (EN, ES, DE, FR, IT, PT).

Decoupled Modularity: The architecture isolates AuthManager and SubscriptionManager. If your app doesn't need accounts or subscriptions, you can delete either module without breaking UI dependencies.

App Store Checklist: Includes a CHECKLIST.md detailing capability setup, RevenueCat entitlements, shared secrets, and StoreKit testing.

Business Model:
The core boilerplate is 100% free and open-source under the MIT license. I am also working on a "Pro" extension (currently on a waitlist) with extra paywall layout variants and parametric theme controls as a one-time purchase.

Repository: https://github.com/launchapp-studio/launchpaywall-ios

I'd love your feedback on the Swift 6 concurrency architecture, module decoupling, or features you'd like to see in the codebase!

Top comments (0)