On this page
Overview
Koin is a dependency-injection framework for Kotlin. Applications declare singletons, factories, and other definitions in modules and start the graph with startKoin. It supports Android and Kotlin Multiplatform and also offers compile-safe dependency validation through the Koin Compiler Plugin.
Features and best fit
Based on official documentation; not hands-on tested · Content checked:
Key features
Declare dependency definitions with a Kotlin module DSL
Definitions such as single and factory live inside modules, allowing constructor dependencies to be resolved from the Koin container with concise Kotlin configuration.
Best fit
Before adoption
Keep core and related modules on the 4.2.2 release line
The repository's current koinVersion and the latest GitHub release are both 4.2.2. Android, Compose, and related artifacts should stay aligned to avoid version mismatches.
Official sources
- [1]InsertKoinIO/koin repository(2026-09-30)
- [2]Koin README(2026-09-30)
- [3]Koin gradle.properties(2026-09-30)
- [4]Koin Kotlin quickstart(2026-09-30)
- [5]Koin 4.2.2 release(2026-09-30)
- [6]Koin Apache 2.0 license(2026-09-30)
Supplemental curator note
Koin 4.2.2 is a lightweight DI framework for Kotlin and Kotlin Multiplatform. Teams can start with the classic runtime DSL and optionally add the Compiler Plugin to validate the dependency graph at compile time. The compiler-oriented DSL requires explicit plugin setup and should not be mixed into an unconfigured project.
Try it in 3 steps
- 1
Add Koin Core 4.2.2
Add the current stable core artifact to a Kotlin application.
implementation("io.insert-koin:koin-core:4.2.2") - 2
Declare a dependency in a module
Start with the classic DSL and define one singleton.
val appModule = module { single { UserService() } } - 3
Start Koin and resolve the instance
Load the module at the application entrypoint and resolve the service from the container.
startKoin { modules(appModule) } val service = KoinPlatform.getKoin().get<UserService>()
Growth
Growth trends · Last 30 days
10,021 Stars
Trend data is still being collected.
Built with
Categories and tags
Categories
GitHub data
GitHub dataView detailed GitHub data
GitHub Topics
- android
- dependency-injection
- injection
- kotlin
- kotlin-multiplatform
- kotlin-multiplatform-library
- library
- Stars
- 10,021
- Forks
- 790
- Watchers
- 105
- Open issues
- 73
- Owner type
- Organization
- Primary language
- Kotlin
- License
- Apache-2.0
- Repository last updated
- Sep 20, 2026
Related information
Write a related articleShare a guide or use case for this OSS in Markdown. Articles are published after administrator approval.
Explore next
- Flutter179,152 Stars
1 shared tag(s) · 2 shared category(s)
build mobile, web, and desktop UI from one Dart codebase
Dart - React Native126,760 Stars
1 shared tag(s) · 2 shared category(s)
native mobile UI with React, stable 0.87.1, and a framework-first path
C++ - Expo52,500 Stars
1 shared tag(s) · 2 shared category(s)
build React Native apps for Android, iOS, and web from one project model
TypeScript - Exposed9,291 Stars
1 shared tag(s) · 1 shared category(s) · Same language
Choose a type-safe Kotlin SQL DSL or DAO and compose JDBC/R2DBC, migrations, and Spring integration as modules
Kotlin - Kotest4,789 Stars
1 shared tag(s) · 1 shared category(s) · Same language
combine spec styles, assertions, and property testing across Kotlin projects
Kotlin - Gradle18,864 Stars
1 shared tag(s) · 1 shared category(s)
unify multi-project builds, tests, dependencies, and packaging through task graphs and plugins
Groovy
Report incorrect information
Tell us if any listing information is incorrect or outdated.