kotlin-inject
Dependency injection lib for kotlin (by evant)
koin
Koin - a pragmatic lightweight dependency injection framework for Kotlin & Kotlin Multiplatform (by InsertKoinIO)
Our great sponsors
kotlin-inject | koin | |
---|---|---|
9 | 16 | |
1,082 | 8,609 | |
- | 0.9% | |
8.0 | 9.2 | |
4 days ago | 6 days ago | |
Kotlin | Kotlin | |
Apache License 2.0 | Apache License 2.0 |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
kotlin-inject
Posts with mentions or reviews of kotlin-inject.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-09-02.
-
From Dagger & Hilt into the multiplatform world with kotlin-inject
Depending on how you use Anvil, there are definitely things that are missing/not as straightforward, e.g. https://github.com/evant/kotlin-inject/issues/212
-
What happened to the Koin hype?
I haven't used koin in a couple years since my newer jobs are using hilt and dagger/anvil for the compile time safety. In my personal projects I have been using kmp which when I started two years ago, koin was in alpha which was why I decided to use kodein. Which koin is stable in kmp, although kotlin-inject seems like a promising kmp compile time di in place of dagger.
- Alternative to Hilt for KMM but not Koin
-
Multiplatform dependency injection libraries equivalent to Dagger/Anvil
I would suggest looking at Kotlin-Inject, it's a compile-time DI like Dagger and it's really pleasant to use.
- Nine circles of hell to migrate a Kotlin Multiplatform project to the koin-annotations
-
Is there extra benefits of using Koin instead of Dagger Hilt in KMM?
Dagger/ hilt will not work on kmm being that they are java projects. One project that is similar to them though on kmm is kotlin-inject which might be something to look at.
-
Yet another DI for kotlin multiplatform
I'd say it's second after this one. That one has multiplatform support in snapshot version, while mine is in alpha)
-
Yet another DI library, bit this time it's not a service locator
Interesting! Author of kotlin-inject here, I had originally looked at writing a compiler plugin and using IR but the lack of documentation and a non-stable api scared me away. Cool that you were able to get it to work.
koin
Posts with mentions or reviews of koin.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-03-21.
-
Kotlin Multiplatform and Swift - Overcoming Interoperability Challenges for Multiplatform Development
Let's see how we can use Koin to achieve Dependency Injection (DI) and incorporate a third-party iOS Swift SDK in a KMM project. Koin supports KMM development, making it the ideal choice for KMM projects.
- [Typescript] Quelqu'un peut-il suggérer une bibliothèque d'injection de dépendance simple pour TypeScript / JavaScript?
-
Best Practices When Splitting Compose Functions Into Separate Files
Might want to tell koin that : https://insert-koin.io/
-
KVision 6.0.0 is released
New modules allow you to easily build KVision apps with the Ballast opinionated application state management framework. You can see how Ballast (together with Koin) can help you design your application architecture in the new todomvc-ballast example.
-
Multiplatform dependency injection libraries equivalent to Dagger/Anvil
I started looking into using Kotlin/JS, and hopefully reusing a bit of code that I have, which is using Dagger and Anvil - which of course are JVM only. So I've been looking for other solutions, namely Koin and Kodein. Koin's multibinding support is... not really amazing (e.g. here, and while Kodein does support multibinding, it doesn't seem to support things like that at the declaration site - everything needs to be specified in a "DI container" (module).
-
Best libraries for Android Developers
Koin
-
Compose - NavHost recomposition multiple times
It's a Koin issue, not compose. Discussed here https://github.com/InsertKoinIO/koin/issues/1079
-
Do we really need to use Dependency Injection Framework?
Now I will finish up saying Hilt is just an opinionated way to dependency injection on Android, but there are simpler frameworks out there such as Koin or Kodein that can help take away a lot of the troubles that can come when you try to make your own framework. Just know that most other frameworks tend to be runtime injection instead of compile time injection like Hilt, which can be helpful to know at compile time if you are missing a dependency in your graph as opposed to runtime when its out in the wild.
-
Can someone suggest a simple dependency injection library for TypeScript/JavaScript?
I've been using Angular a lot and I like how it works. I'm also a huge fan of koin for kotlin.
-
A Kotlin programmer's approach to microservices?
for injection, I suggest Koin (https://insert-koin.io/)
What are some alternatives?
When comparing kotlin-inject and koin you can also consider the following projects:
anvil - A Kotlin compiler plugin to make dependency injection with Dagger 2 easier.
Kodein - Painless Kotlin Dependency Injection
kotlin-guice - Guice DSL extensions for Kotlin
dikt - Simple and powerful DI for kotlin multiplatform
injekt
Dagger2 - A fast dependency injector for Android and Java.
spring-fu - Configuration DSLs for Spring Boot
ksp - Kotlin Symbol Processing API
kapsule - Minimalist dependency injection library for Kotlin.
motif - A simple DI API for Android / Java
Decompose - Kotlin Multiplatform lifecycle-aware business logic components (aka BLoCs) with routing (navigation) and pluggable UI (Jetpack Compose, SwiftUI, JS React, etc.)