Skip to content

JetBrains Compose Multiplatform UI App (Android, iOS). MVVM - Kotlin MultiPlatform (KMP). Desktop, Web coming soon

Notifications You must be signed in to change notification settings

NikhilBhutani/ComposeMultiplatformNewsAppDemo

Repository files navigation

NewsAppDemo (Compose Multiplatform)

This is an exploration app for Compose Multiplatform UI. Currently this app have Android, iOS and it is 100% Compose UI. For more details on Compose Multiplatform UI visit: https://github.com/JetBrains/compose-jb/ The support for iOS on Compose Multiplatform is still in experimental phase. I'll be adding desktop and web versions soon.

The code follows clean architecture approach keeping the data, domain and presentation layer separate.

Libraries

  • Moko for MVVM
  • kotlinx coroutines
  • ktor (HTTP client)
  • Koin (Dependency Injection)
  • Jetbrains Compose
  • Material Design 3
  • SqlDelight for database (both ios and android)

For rest api, I am using NewsAPI

Current supported Platforms are:

  1. Android
  2. iOS

Upcoming Supported Platform for this Demo:

  1. Desktop
  2. Web

Running the App:

For running the app, you need an api to feed data. For Rest api, I am using NewsAPI. You need to create a free account, get your api key and add it API_KEY in KtorApi class

iOS

NewsAppIosComposeMultiplatform.mov

Android

Screen_recording_20231229_171356.webm

About

JetBrains Compose Multiplatform UI App (Android, iOS). MVVM - Kotlin MultiPlatform (KMP). Desktop, Web coming soon

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published