Building KMP Libraries: The RevenueCat Story | Talking Kotlin #137

Kotlin by JetBrains February 20, 2025
Video Thumbnail
Kotlin by JetBrains Logo

Kotlin by JetBrains

View Channel

About

Concise. Multiplatform. Fun. Kotlin is a concise, cross-platform programming language developed by JetBrains. Expand your Kotlin skills with the official YouTube channel of the Kotlin programming language. Kotlin Tutorials, Kotlin Multiplatform, Kotlin Coroutines, Kotlin Tips, Talking Kotlin Podcast. Subscribe for shows, the latest news, and live events!

Video Description

Sebastian and Márton discuss building KMP libraries with Jay Shortway, the author of RevenueCat’s Kotlin Multiplatform SDK for in-app purchases. 0:00 Intro 0:44 What’s RevenueCat 4:00 In-app purchases are hard 7:22 The multiplatform SDK – https://www.revenuecat.com/docs/getting-started/installation/kotlin-multiplatform 12:44 The demand for KMP 16:30 Hiring and team structure 18:42 SDKs for any framework – https://www.revenuecat.com/blog/engineering/how-our-hybrids-work/ 21:27 Building on native SDKs 23:45 Improving iOS linking – https://github.com/ttypic/swift-klib-plugin 24:54 The SDK is on GitHub 26:05 Benefits of building on native 28:18 Designing a common API 33:21 Add-on modules for SDKs 37:30 Instant in the standard library – https://github.com/Kotlin/kotlinx-datetime/issues/382 38:04 Returning results from the API 39:53 API design decisions 44:57 Codegen opportunities 45:48 The best things about KMP 47:07 KMP improvements wishlist 48:28 The KMP journey 49:45 Wrap-up RevenueCat KMP SDK – https://www.revenuecat.com/docs/getting-started/installation/kotlin-multiplatform How we built the RevenueCat SDK for Kotlin Multiplatform – https://www.revenuecat.com/blog/engineering/how-we-built-the-revenuecat-sdk-for-kotlin-multiplatform/ Hybrid SDK Architecture at RevenueCat – https://www.revenuecat.com/blog/engineering/how-our-hybrids-work/ ttypic/swift-klib-plugin on GitHub RevenueCat/purchases-kmp on GitHub – https://github.com/RevenueCat/purchases-kmp Consider moving `Instant` and `Clock` to the standard library · Kotlin/kotlinx-datetime – https://github.com/Kotlin/kotlinx-datetime/issues/382 RevenueCat openings – https://job-boards.greenhouse.io/revenuecat Hosts: Sebastian Aigner Website – https://sebi.io/ Bluesky – https://bsky.app/profile/sebi.io Márton Braun Website – https://zsmb.co Bluesky – https://bsky.app/profile/zsmb.co Guest: Joop Korteweg – https://x.com/JayShortway

You May Also Like

No Recommendations Found

No products were found for the selected channel.