Kotlinmultiplatform

Kotlin MultiPlatform App (Android, iOS, JVM & JS). MVVM/MVP - Kotlin MultiPlatform
Alternatives To Kotlinmultiplatform
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Kotlinmultiplatform547
3 years ago2gpl-3.0Kotlin
Kotlin MultiPlatform App (Android, iOS, JVM & JS). MVVM/MVP - Kotlin MultiPlatform
Tddweatherapp18
4 years agoKotlin
Android App trying to apply TDD and using MVVM, Kotlin Coroutines
Myweatherkotlinflow15
3 years agoJava
Android app that shows weather at your current location or any custom location you specify. Uses Kotlin Flow for data streaming and coroutines for asynchronous work. Also leverages Room, navigation component, Viewmodel and Livedata Jetpack components with MVVM presentation layer architecture. Dagger 2 with Dagger android for dependency injection
Weather Clean Architecture3
15 days agoKotlin
A weather android app demonstrates Clean Architecture and is written in Kotlin.
Foreksty2
3 years agoKotlin
A simple and nice looking weather forecast application. Developed using Kotlin, MVVM architecture, Dagger 2, Kodein, Coroutine, RxJava 2
Weathercomfort2
3 years ago1mitKotlin
A simple Weather App
Alternatives To Kotlinmultiplatform
Select To Compare


Alternative Project Comparisons
Readme

Kotlin-Multiplatform (Android, iOS, JS & JVM Desktop App)

kotlin-version kotlin-weekly

License: GPL v3

This example shows how to create a simple Android/iOS/JVM/JS project sharing some Kotlin code. This app saves on a local database your favourites locations and get the current weather of them from OpenWeatherMap.

In this app we share common code for both platforms (Android/iOS) to get data from an API (in this case OpenWeatherMap). The libraries that we use are:

Tests:

  • MockK: mocking library for Kotlin

Android App - Master Branch

With this app you can get the weather of your locations using KTor:

And add and save on SQLDelight database your favourite locations:

iOS App

Open XCode and select the project:

JVM - Desktop App

To execute this version as desktop app, you have to execute this code on your console:

./gradlew JavaFxApp:run

By default the JDBC SQLite is created in memory. If you want to persist your database in your disk, you have to indicate the path when you create the database driver:

SQLDriver.kt
JdbcSqliteDriver("jdbc:sqlite:$your_database_path")

JS App

If you want to launch a web to get the weather you can try executing the next commands:

./gradlew JsApp:run
./gradlew BackEnd:run
--> localhost:8080

Current weather is not shown when you launch the browser? If you have this problem (Module not found: Error: Can't resolve 'core-js/features/object/assign') try to reinstall the node module core-js:

npm install core-js

I have followed these examples:

https://kotlinlang.org/docs/tutorials/native/mpp-ios-android.html

https://www.raywenderlich.com/1022411-kotlin-multiplatform-project-for-android-and-ios-getting-started

https://proandroiddev.com/kotlin-multiplatform-very-beginners-guide-part-3-database-e34c92daf41c

Popular Kotlin Coroutines Projects
Popular Weather Projects
Popular Control Flow Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Js
Swift
Kotlin
Objective C
Weather
Kotlin Android
Dagger
Multi Platform
Mvvm Architecture
Kotlin Coroutines