Kotlin Multiplatform technology is on the rise. With the appeal as one framework for various platform, turn more applications into using Kotlin Multiplatform as their base. Here is some of the common useful library that compatible for Kotlin Multiplatform.
- Networking — Ktor
No doubt, most of the application will need to retrieve data from server or API. Thus HTTP Client library is one the most important library. Ktor includes a multiplatform asynchronous HTTP client, which allows you to make requests and handle responses, extend its functionality with plugins (formerly known as features), such as authentication, JSON serialization, and so on. - Dependency Injection — KOIN
Dependency injection is a technique used in object-oriented programming (OOP) in which an object or function receives other objects or functions that it requires, as opposed to creating them internally. Dependency injection will reduce hardcoded boilerplate dependencies between object & maintain only one singleton object throughout the application.
KOIN is a pragmatic lightweight dependency injection framework for Kotlin developers. Koin provides an easy and efficient way to incorporate dependency injection into Kotlin Multiplatform application. It is also support Ktor server. - Navigation — Decompose
Decompose simplifies state management and navigation in Kotlin Multiplatform projects, making your codebase more maintainable and scalable. - Location — Compass
Compass is a Kotlin Multiplatform library location toolkit. It provides a set of tools for working with location data, including geocoding, reverse geocoding, and more. The library is built with a focus on simplicity and ease of use, providing a straightforward API for geocoding operations. Featuring geocoding, geolocation and autocomplete. - Logging — KMLogging
We always underestimate the importance of logging message, and we take it for granted the imprinted logging system inside Android. However not so with Compose Multiplatform. There is no logging system for KMP. KMLogging is simple to use and no configuration required, suitable for what we need.
Do you think any more library need to be included in this list? Please comment bellow.