Extending kotlin-inject for fun & profit
summary
Company replaces Dagger+Anvil with kotlin-inject + KSP to get compile-time DI across Kotlin Multiplatform, writes a custom KSP processor using KotlinPoet and kotlin-compile-testing to reintroduce Envil-like contributesTo/mergeComponent semantics, generates component interfaces at compile time, and ships platform-specific app components for Android, iOS and desktop. Build times drop, verification stays at compile time, and missing features are restored by an internal fork that works in production while upstream catching up.
AI-written summary · about
chapters (8)
- 0:00Kotlin Inject intro at Amazon
- 2:10Why Kotlin Inject for KMP
- 9:14Dagger 2 vs Kotlin Inject
- 14:34Kotlin Inject improvements over Dagger
- 21:26Kotlin Inject limits and fixes
- 24:41Scaling Kotlin Inject best practices
- 31:07Extending Kotlin Inject with KSP
- 37:52Summary for Kotlin Inject
related talks
30mExtending kotlin-inject for fun & profit
48mAndroid, Compose, Multiplatform & Server - Inject them all with Koin
38mKSP and Plugins. Optimizing Kotlin Multiplatform common code
17mKoin vs. Kotlin-inject
37mAdvanced multi-platform dependency injection
35mDIY Dependency Injection with Kotlin
29mDIY Dependency Injection with Kotlin
33mMeta-programming with KSP and Kotlin compiler plugins
