FriendSync KMP is a Compose-multiplatform project that uses a custom Ktor server to work as a backend and supports Android, iOS. Web and desktop applications will be added in the future. Basically, it is an analogue of Instagram, which will support all its functions in the future.
-
Lifecycle An interface that automatically responds to lifecycle events.
-
Navigation Navigation refers to interactions that allow users to navigate through , enter, and exit various parts of the content in your app. Navigation component Android Jetpack helps you navigate, from simple button clicks to more complex templates like application panels and navigation bar. The navigation component also provides a consistent and predictable user interface, adhering to an established set of principles.
-
ViewModel Data related to the user interface that is not destroyed when the application is rotated. Easily schedule asynchronous tasks for optimal execution.
- Coil3 Coil3 is a highly optimized, pluggable Compose image loading solution.
- Coroutines Asynchronous or non-blocking programming is an important part of the development landscape. When creating server-side, desktop, or mobile applications, it's important to provide an experience that is not only fluid from the user's perspective, but also scalable when needed.
- Koin Koin is a pure Kotlin library and can be used in your shared Kotlin project.
- Ktor The Ktor HTTP client can be used in multiplatform projects. In this tutorial, we'll create a simple Kotlin Multiplatform Mobile application, which sends a request and receives a response body as plain HTML text.
-
Room (Kotlin Multiplatform) The Room persistence library provides an abstraction layer over SQLite to allow for more robust database access while harnessing the full power of SQLite. This page focuses on using Room in Kotlin Multiplatform (KMP) projects. For more information on using Room, see Save data in a local database using Room or our official samples.
-
DataStore (Kotlin Multiplatform) The DataStore library stores data asynchronously, consistently, and transactionally, overcoming some of the drawbacks of SharedPreferences. This page focuses on creating DataStore in Kotlin Multiplatform (KMP) projects. For more information on DataStore, see the primary documentation for DataStore and official samples.