Kodein
Kodein copied to clipboard
Painless Kotlin Dependency Injection
Hi, I'm using Compose Desktop as part of my multiplatform app (currently using KodeIN DI for Android, Desktop/JVM, Server/JVM, and JS). The proguard rules for Android as per [https://kosi-libs.org/kodein/7.21/framework/android.html#_proguard_configuration](https://kosi-libs.org/kodein/7.21/framework/android.html#_proguard_configuration) need...
I can't figure out a way to bind a generic (non-reified) type parameter: ```kotlin class Container(val obj: Type) { fun typeBinder(builder: Kodein.Builder) { builder.apply { bind() from singleton { obj...
I am trying to call rememberViewModel on my VMs that inherit from androids ViewModel(). The call is giving me the title warning for deprecation of the method. I have this...
dependency - org.kodein.di:kodein-di-framework-compose:7:20:1 Im injecting a ScreenModel from the Voyager library and all is working well when i run the app on Android, but if i try to run it...
I read in `TODO.md` that suspending factories would be a major change. I'm wondering whether there are any plans to implement them? In a project based on Vert.x, where most...
I have attempted to port Kodein to Ktor 3 myself, as only two changes were required, however one test is failing: https://github.com/stashymane/Kodein/commit/89a4d60fd72ecd24d4e0cd5c2caad05660559413  It seems that the call pipeline is...
https://blog.jetbrains.com/kotlin/2024/04/the-ktor-plugin-registry/
This is a question regarding with what I've read in the guide and not a bug with Kodein. In the Retrieval section (https://kosi-libs.org/kodein/7.22/getting-started.html#_retrieval), there's a simple example of using the...
I'm trying to add Kodein version 7.22.0 to a KMP project. I started the project with Android Studio KMP plugin template, with JVM 1.8 version and Gradle 8.5. However, when...
versions: kotlin 1.9.x-2.0.20 kodein: 7.21.2 - 7.22.0 **target: iOS** reproduce steps: ``` interface Dice { fun getName(): String } class DiceImpl : Dice { override fun getName(): String = "DiceImpl"...