Skip to content

An modern android weather sample app with Jetpack Compose which uses the Bright Sky API to get data of the German Meteorological Service - DWD.

License

Notifications You must be signed in to change notification settings

public-value-tech/pub-android-weather-sample

Repository files navigation

Android Weather Sample App

Kotlin Static Badge Flows Static Badge Coroutines Static Badge Jetpack Static Badge Compose Static Badge Datastore Static Badge ViewModel Static Badge Android Static Badge Android API Static Badge Hilt Static Badge Material Design 2 Static Badge Lottie Compose Static Badge Moshi Static Badge Retrofit Static Badge

An android weather sample app with Jetpack Compose which uses the Bright Sky API to get data of the German Meteorological Service - DWD.

Note

Only locations inside germany are supported for now.

Screenshots

Features

Current temperature, Max temperature, Min temperature, Current weather state, Animated weather icons, Precipitation volume, Precipitation risk, Relative Humidity, Wind speed, Wind direction, Dew point, Visibility, Solar irradiation, Sunshine duration, Pressure, Cloud cover, 10 day forecast, Hourly forecast, Auto completion for locations, Set location via device location/gps, Switch between designs, Multiple languages

Build with

Principles, Pattern & Architecture

Setup

To build the app a google-services.json file needs to be added to the app folder. Therefore it is necessary to create a firebase account.

Contribute

Rules and guidelines for contributing in this project.

How to:

  • Fork the project to your own GitHub profile

  • Download the forked project using git clone:

    git clone git@github.com:<YOUR_USERNAME>/<YOUR_FORKED_REPONAME>.git
  • Create a new branch with a descriptive name:

    git checkout -b feat/<SHORT-FEATURE-NAME>

    Recommended pattern for branch-names & commit-messages:

    • Feature-branch: feat/<SHORT-FEATURE-NAME> e.g.: feat/added-new-language
    • Bugfix-branch: fix/<SHORT-FIX-NAME> e.g.: fix/fixed-icon-mapping
    • Commit on feature branch: e.g.: Added new language for france
    • Commit on bugfix branch: e.g.: Fixed icon mapping for heavy rain
  • Write some code, fix something, and add a test to prove that it works.

  • Commit your code and push it to GitHub

  • Open a new pull request and describe the changes you have made.

  • We'll accept your changes after a completed review.

Important

Do not exceed the number of 500 lines for a pull-request to keep them small and the review easier.

Code of Conduct:

This project and everyone participating in it is governed by its Code of Conduct. By participating, you are expected to uphold this code.

Thank you!

Why we made this?

As part of of the German public broadcaster, we aim to offer insights into our Android development process and openly showcase it to the public community.

Acknowledgements

Bright Sky Api Bright Sky Api Deutscher Wetterdienst