- Multiplatform mobile app that displays live weather data using Zomato's free Weather Union API. Which also has map to show weather updates of all supported locations.
- UI - Compose Multiplatform
- Logic - Kotlin Multiplatform
- Viewmodel - Android ViewModel
- DI - Kotlin Inject
- Database - SQLDelight
- Key-Value Store - Proto DataStore
- Map - Google Map
- Logic Test - Kotlin Test
- UI Test - Compose Multiplatform Test
%%{
init: {
'theme': 'forest'
}
}%%
graph LR
subgraph :modules
:modules:shared["shared"]
:modules:core["core"]
:modules:data["data"]
:modules:logic["logic"]
:modules:testing["testing"]
end
:composeApp --> :modules:shared
:modules:shared --> :modules:core
:modules:shared --> :modules:data
:modules:shared --> :modules:logic
:modules:logic --> :modules:core
:modules:logic --> :modules:data
:modules:testing --> :modules:core
:modules:testing --> :modules:data
:modules:testing --> :modules:logic
:modules:data --> :modules:core
- Generate Google Maps API key - Doc
- For Android, put your API key in the secrets.properties file.
- For iOS, put your API key in the iOSApp.swift file.
- Login to Weather Union and generate an API Key.
- After launching the app, goto Menu icon (Top Right corner) -> 'Enter API Key' menu -> Put your API Key in TextField -> Click 'Done' on the Keyboard.