View Code? Open in Web Editor
NEW
An modern android weather sample app with Jetpack Compose which uses the Bright Sky API to get data of the German Meteorological Service - DWD.
Home Page: https://github.com/public-value-tech/pub-android-weather-sample
License: MIT License
pub-android-weather-sample's People
Contributors
Watchers
pub-android-weather-sample's Issues
Description:
For some values the api can return also null in very rare circumstances.
In some ui elements then we show this NULL value, which should be avoided.
Seen e.g. for the current temperature.
Reproduction steps:
Not rly reproducable because it depends on the returned value of the api.
Can be faked by hardcoding NULL inside the entity mapper.
Acceptance criteria:
Do not show compose element's if the displayed value is NULL
Description:
Implement a glance widget which shows the current temperature, weather-icon, weather-state, date, 3-4 day forecast. The widget should be responsive and show less or more content depending on the size.
Acceptance criteria:
Show the described weather-widget
Description:
Create thr datalayer for the alerts from https://brightsky.dev/docs/#/operations/getAlerts
Acceptance criteria:
Add request to retrofit for alerts
Add response class for alerts
Add entity class
Add mapper for response to entity
Add repository for alerts
Add usecase for alerts
Add some unit tests
Description:
Add a navigation drawer to the ui to be able to show additional options & informations
Acceptance criteria:
Add a button to the top right for the navigation drawer
Open the navigation drawer on the right side
Swiping should close the drawer
Description:
Add wind gust speed and wind gust direction to the ui like wind speed and wind gust.
Acceptance criteria:
Map the wind gust speed to the ui-model
Map the wind gust direction to the ui-model
Extend the string resources with proper formater & descriptions
Add tags to the compose elements for wind gust speed & wind gust direction
The tag should look like the one for wind speed
Description:
Implement the navigation component for navigation with compose and add a option inside the navigation drawer to show the oss screen with the used dependencies.
Acceptance criteria:
Implement a solution to use jetpack navigation
Add a button inside the navigation drawer to display the oss screen
Add the oss licenses plugin dependency
Add jetpack navigation
Requirements:
[Ticket-#9 ]
Description:
Add the data layer for the radar https://brightsky.dev/docs/#/operations/getRadar
Acceptance criteria:
Add request for radar to retrofit
Add request class for radar
Add entity class for radar
Add mapper from request to entity
Add repository
Add usecase
Add some unit tests
Description:
Implement a simple compose element which shows the radar data as overlay on an image of a map of germany.
https://brightsky.dev/docs/#/operations/getRadar
Acceptance criteria:
Add data class for ui-models of radar data
Add mapper for radar entity data class to ui-model data class
Inflate compressed radar data base64 string
Add simple compose element to display radar data on an image of a map of germany
Bounding box should match the image of the map
Description:
Saving of locations should be possible to avoid that these locations have to be re-entered again and again by the user.
Acceptance criteria:
Saving locations found by the auto-completion via a button
Picking already saved locations from a list
Description:
Migrate from material design 2 to material design 3.
Acceptance criteria:
Add the material 3 dependency
Remove unnecessary material 2 dependencies
Remove all material design 2 components from compose elements
Check if we need to keep the pull-refresh component from material 2
Description:
Implement dynamic colors to enrich the user-experience with a state-of-the-art feature.
https://developer.android.com/develop/ui/views/theming/dynamic-colors
Acceptance criteria:
Implement the dynamic-colors so that the user can activate it in the OS
Colors should change in the app accordingly to the picked image, so that everything is still readable
Adjust colors if needed
Requirements:
[Ticket-https://github.com//issues/4 ]
Description:
Configure proguard so that a release build can be done.
Acceptance criteria:
Configure a debug & release build
Configure proguard for a release build
Description:
Add the ui layer for alerts.
Acceptance criteria:
Add ui-model classes for alerts
Add mapper for entity to ui-model for alerts
Add necessary string resources
Add necessary formatter functions
Add compose elements
Extend the view-model