This is a weather app built using Kotlin programming language. The app uses the OpenWeather API to retrieve weather data for various locations and provides users with up-to-date weather information and forecasts.
- Current weather information for the user's location or any other location of interest
- 1-day forecast with predicted high and low temperatures for each day
- Detailed information such as humidity, wind speed, and chance of precipitation
- Toggle between different units of measurement (e.g. Celsius and Fahrenheit)
- Location-based weather alerts and push notifications for severe weather conditions {Android 11 12 13}
- Additional information such as sunrise and sunset times, moon phase, and UV index.
To run the app, you will need to obtain an API key from OpenWeatherMap. Once you have the API key, create a new file local.properties in the project root directory and add the following line:
OPEN_WEATHER_MAP_API_KEY=<your_api_key_here>
Replace <your_api_key_here> with your actual API key.
The app uses the following dependencies:
Retrofit for networking Moshi for JSON parsing Glide for image loading WorkManager for background updates Room for data persistence ViewModel and LiveData for data management
Contributions to the project are welcome. If you find any bugs or issues, please open an issue in the GitHub repository. If you want to contribute to the code, fork the repository and submit a pull request.
This project is licensed under the MIT License - see the LICENSE file for details.