koin
kotlinx.serialization
Our great sponsors
koin | kotlinx.serialization | |
---|---|---|
14 | 48 | |
7,901 | 4,408 | |
1.2% | 2.5% | |
6.0 | 9.3 | |
6 days ago | 5 days ago | |
Kotlin | Kotlin | |
Apache License 2.0 | Apache License 2.0 |
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.
koin
-
Best Practices When Splitting Compose Functions Into Separate Files
Might want to tell koin that : https://insert-koin.io/
To use the viewModels across all screens I use dependency injection by Koin. However Google promotes Hilt, I think that is the golden standard at this point. Both frameworks support creating viewModels with a navigation back stack entry as viewModelStoreOwner.
-
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
-
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/)
-
View Model Doesn’t Have To Depend on ViewModel
It'd be great if it worked
-
Kotlin Team AMA #3: Ask Us Anything
For DI take a look at Koin. It's a pragmatic lightweight dependency injection framework for Kotlin developers with multiplatform support. PeopleInSpace sample project uses it.
kotlinx.serialization
-
Why should I use kotlinx.serialization?
This is the issue to +1 https://github.com/Kotlin/kotlinx.serialization/issues/1931
- Generate Kotlin client for a complex web API
-
Modern Android Development in 2023
Kotlin Serialization
-
Apple's Swift rewrite of its Foundation framework will be open source
Kotlin Serialization is also a newer option, but doesn't have as much traction.
-
Jackson, moshi or kotlinx.serialization?
``` see the docs
-
Connect-Web: It's time for Protobuf/gRPC to be your first choice in the browser
It makes sense for some use cases but the vast majority of use cases, parsing overhead is simply not a concern. Mobile phones are fast, networks have plenty of bandwidth (and the savings are marginal), parsers are pretty good.
But done right, binary protocols are sometimes worth the marginal savings they provide. We switched over one of our APIs to use CBOR instead of json. It's a search API that we hit a lot and I wanted to cut down on the bytesize of the responses a little. The savings are not that impressive. But I'll take 10% when i can get it.
Otherwise, this was a pretty simple change. We use kotlinx serialization in a multi-platform library. Basically, all we did is configure it to use CBOR instead of json. https://github.com/Kotlin/kotlinx.serialization/blob/master/... Half hour job. Haven't looked at it since; just works. It supports protobuf as well but it looked like more hassle to set up so we went with CBOR instead.
-
FP for web/mobile apps in 2022?
I'm very much with you on kotlinx.serialization's pain points. And unfortunately, there just doesn't seem to be much of a willingness to fix them. They seem very tied to their polymorphic/contextual serialization model, despite all the problems it causes.
- Is there a good JSON to Gson converter for Kotlin !
-
Implementing Jetpack Compose + Orbit MVI
Name Link Koin https://insert-koin.io Jetpack Compose https://developer.android.com/jetpack/compose Navigation Compose https://developer.android.com/jetpack/compose/navigation Orbit MVI https://orbit-mvi.org Coil https://coil-kt.github.io/coil/ Room https://developer.android.com/training/data-storage/room?hl=ja Kotlin-Serialiazation https://github.com/Kotlin/kotlinx.serialization PokemonGO-Pokedex https://github.com/Biuni/PokemonGO-Pokedex
-
Kotlin or Java?
Learn Kotlin. This guide is quite good for the basics. After that, definitely learn about Coroutines. Then question your libraries, there are a lot of pretty convenient Kotlin-optimized libraries available, like ktor (HTTP client) or Kotlin Serialization.
What are some alternatives?
Kodein - Painless Kotlin Dependency Injection
Moshi - A modern JSON library for Kotlin and Java.
jackson-module-kotlin - Module that adds support for serialization/deserialization of Kotlin (http://kotlinlang.org) classes and data classes.
kotlin-guice - Guice DSL extensions for Kotlin
klaxon - A JSON parser for Kotlin
Gson - A Java serialization/deserialization library to convert Java Objects into JSON and back
injekt
spring-fu - Configuration DSLs for Spring Boot
spring-native - Spring Native is now superseded by Spring Boot 3 official native support
kotlin-json - A JavaScript Object Notation library for Kotlin JVM.
kapsule - Minimalist dependency injection library for Kotlin.
kotlin-guiced - Convenience Kotlin API over the Google Guice DI Library