Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yusuf0405/kmp-friend-sync
https://github.com/yusuf0405/kmp-friend-sync
andoid clean-architecture compose-multiplatform composite-build coroutines ios kmp koin-injection kotlin-multiplatform ktor-client multimodule-kotlin-app mvvm sqldelight
Last synced: 5 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/yusuf0405/kmp-friend-sync
- Owner: yusuf0405
- Created: 2023-11-06T23:45:11.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2025-01-20T11:44:38.000Z (about 1 month ago)
- Last Synced: 2025-01-20T12:35:11.235Z (about 1 month ago)
- Topics: andoid, clean-architecture, compose-multiplatform, composite-build, coroutines, ios, kmp, koin-injection, kotlin-multiplatform, ktor-client, multimodule-kotlin-app, mvvm, sqldelight
- Language: Kotlin
- Homepage:
- Size: 619 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.MD
Awesome Lists containing this project
README
# Friend-Sync KMP
## Overview
FriendSync KMP is a Compose-multiplatform project that uses a
custom [Ktor server](https://github.com/yusuf0405/friend-sync-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.## Libraries
### Android Jetpack
* [Lifecycle](https://developer.android.com/topic/libraries/architecture/lifecycle) An interface
that automatically responds to lifecycle events.* [Navigation](https://developer.android.com/guide/navigation?gclsrc=aw.ds&gclid=Cj0KCQiA09eQBhCxARIsAAYRiymyM6hTEs0cGr5ZCXOWtLhVUwDK1O86vf8V_Uq2DWvVYNFZwPFznzAaAllMEALw_wcB)
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](https://developer.android.com/topic/libraries/architecture/viewmodel) Data related to
the user interface that is not destroyed when the application is rotated. Easily schedule
asynchronous tasks for optimal execution.### Image loader
* [Coil3](https://skydoves.github.io/landscapist/coil3/) Coil3 is a highly optimized,
pluggable Compose image loading solution.### Multithreading
* [Coroutines](https://kotlinlang.org/docs/coroutines-overview.html) 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.### DI
* [Koin](https://insert-koin.io/docs/reference/koin-mp/kmp/)
Koin is a pure Kotlin library and can be used in your shared Kotlin project.### Network
* [Ktor](https://ktor.io/docs/client-create-multiplatform-application.html)
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.### Database
* [Room (Kotlin Multiplatform)](https://developer.android.com/kotlin/multiplatform/room) 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)](https://developer.android.com/kotlin/multiplatform/datastore)
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.## Screen Shots
### Android Screenshots
[
]()
[]()
[]()
[]()
[]()
[]()
[]()
[]()
[]()
[]()
### iOS Screenshots
[
]()
[]()
[]()
[]()
[]()
[]()
[]()
[]()
[]()