This will cause that your app has a hard dependenc...
# koin
s
This will cause that your app has a hard dependency on all of your feature modules avoiding to only load the modules that you are currently working with with the IDE (which saves a huge load of time as the other modules are not even compiled in a clean build). App should only be loading your "common / base" modules such as network / cache / auth In your feature module you can then autoinject yourself with
loadKoinModules
and using a top level
by lazy
to avoid double injection on screen rotation. For ex.
Copy code
fun injectFeature() = loadFeature

private val loadFeature by lazy {
    loadKoinModules(
        viewModelModule,
        useCaseModule,
        repositoryModule,
        dataSourceModule,
        networkModule,
        cacheModule
    )
}
I would then call
injectFeature()
in the first screen that gets it. Any feedback on the above from the channel?