AI prompts
base on A Material Design Weather Application <div align="center">
<br />
<img src="app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp" alt="Logo" />
</div>
<h1 align="center">Breezy Weather</h1>
<br />
<div align="center">
<img alt="API 21+" src="https://img.shields.io/badge/Api%2021+-50f270?logo=android&logoColor=black&style=for-the-badge"/>
<img alt="Kotlin" src="https://img.shields.io/badge/Kotlin-a503fc?logo=kotlin&logoColor=white&style=for-the-badge"/>
<img alt="Jetpack Compose" src="https://img.shields.io/static/v1?style=for-the-badge&message=Jetpack+Compose&color=4285F4&logo=Jetpack+Compose&logoColor=FFFFFF&label="/>
<img alt="Material You" src="https://custom-icon-badges.demolab.com/badge/material%20you-lightblue?style=for-the-badge&logoColor=333&logo=material-you"/>
<br />
<img src="https://img.shields.io/github/license/breezy-weather/breezy-weather?style=for-the-badge" alt="License LGPL-3.0" />
<img src="https://img.shields.io/github/languages/code-size/breezy-weather/breezy-weather?style=for-the-badge" alt="GitHub code size in bytes" />
<br /><br />
<a href="https://github.com/breezy-weather/breezy-weather/releases">
<img src="https://img.shields.io/github/v/release/breezy-weather/breezy-weather?color=purple&include_prereleases&logo=github&style=for-the-badge" alt="Download from GitHub" />
</a>
<a href="https://apt.izzysoft.de/fdroid/index/apk/org.breezyweather/">
<img src="https://img.shields.io/endpoint?url=https://apt.izzysoft.de/fdroid/api/v1/shield/org.breezyweather?color=purple&include_prereleases&logo=FDROID&style=for-the-badge" alt="Download from IzzyOnDroid repo" />
</a>
<a href="https://f-droid.org/packages/org.breezyweather/">
<img src="https://img.shields.io/f-droid/v/org.breezyweather?color=purple&include_prereleases&logo=FDROID&style=for-the-badge" alt="Download from F-Droid default repo" />
</a>
</div>
<h4 align="center">Breezy Weather is a weather app with a strong focus on design, with a simple, clean UX, smooth animations, and Material Design all over, plus lots of customizability.</h4>
<div align="center">
# Download
<a href="https://github.com/breezy-weather/breezy-weather/releases">
<img src="https://user-images.githubusercontent.com/69304392/148696068-0cfea65d-b18f-4685-82b5-329a330b1c0d.png"
alt="Get it on GitHub" align="center" height="80" /></a>
<a href="https://github.com/breezy-weather/breezy-weather/blob/main/INSTALL.md#obtainium">
<img src="https://github.com/ImranR98/Obtainium/blob/main/assets/graphics/badge_obtainium.png"
alt="Get it on Obtainium" align="center" height="54" />
</a>
<a href="https://github.com/breezy-weather/breezy-weather/blob/main/INSTALL.md#f-droid-client">
<img src="https://f-droid.org/badge/get-it-on.png"
alt="Get it on F-Droid" align="center" height="80" /></a>
</div>
<div align="center">
<p><a href="https://github.com/breezy-weather/breezy-weather/blob/main/INSTALL.md"><strong>All installation methods</strong></a></p>
</div>
<div align="center">
<p><strong>SHA-256 hash of the signing certificate:</strong> 29d435f70aa9aec3c1faff7f7ffa6e15785088d87f06ecfcab9c3cc62dc269d8<br />
SHA-256 checksums are also provided per file on the <a href="https://github.com/breezy-weather/breezy-weather/releases">GitHub releases page</a>.</p>
</div>
<hr />
<div align="center">
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/01-main-header-1.png" alt="" style="width: 300px" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/02-main-header-2.png" alt="" style="width: 300px" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/03-main-header-3.png" alt="" style="width: 300px" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/04-main-daily-hourly-1.png" alt="" style="width: 300px" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/05-main-daily-hourly-2.png" alt="" style="width: 300px" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/06-main-daily-hourly-3.png" alt="" style="width: 300px" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/07-air-quality-pollen.png" alt="" style="width: 300px" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/08-ephemeris-details.png" alt="" style="width: 300px" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/09-alerts.png" alt="" style="width: 300px" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/10-widgets-1.png" alt="" style="width: 300px" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/11-widgets-2.png" alt="" style="width: 300px" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/12-sources.png" alt="" style="width: 300px" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/13-sources-combine.png" alt="" style="width: 300px" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/14-settings.png" alt="" style="width: 300px" />
</div>
# Features
- Weather data
- Daily and hourly forecasts up to 16 days
- Temperature
- Air quality
- Wind
- UV index
- Precipitation
- Feels like temperature
- Hourly forecasts
- Humidity / Dew point
- Pressure
- Cloud cover
- Visibility
- Precipitation in the next hour
- Air quality
- Pollen & Mold
- Ephemeris (Sun & Moon)
- Severe weather and precipitation alerts
- Real-time weather conditions
- Temperature
- Feels like
- Wind
- UV index
- Humidity
- Dew point
- Atmospheric pressure
- Visibility
- Cloud cover
- Ceiling
- More than 50 weather sources supported (<a href="docs/SOURCES.md">full list</a>)
- Large selection of home screen widgets for at-a-glance information
- Live wallpaper
- Custom icon packs
- [Geometric Weather icon packs](https://github.com/breezy-weather/breezy-weather-icon-packs/blob/main/README.md)
- Chronus Weather icon packs
- Automatic dark mode
- <details><summary>Free and Open Source</summary>
- No proprietary blobs/dependencies
- Releases generated by GitHub actions, guaranteeing it matches the source code
- Fully works with Open-Meteo (FOSS source)
</details>
- <details><summary>Privacy-friendly</summary>
- No personal data collected by the app ([link to app privacy policy](https://github.com/breezy-weather/breezy-weather/blob/main/PRIVACY.md))
- Multiple sources are available, with links to their privacy policies for transparency
- Current location is optional and not added by default
- If using current location, an IP location service can be used instead of GPS to send less accurate coordinates to weather source
- No trackers/automatic crash reporters
</details>
# Help
* [Frequently Asked Questions / Help](HELP.md)
* [Homepage explanations](docs/HOMEPAGE.md)
* [Weather sources comparison](docs/SOURCES.md)
# Contribute
Pull requests are welcome. You can have a look at [issues opened to contributions](https://github.com/breezy-weather/breezy-weather/issues?q=is%3Aissue+is%3Aopen+label%3A%22Open+to+contributions%22). For other changes, please open an issue first to discuss what you would like to change.
* [Contribution guide (includes a guide to create a new weather source)](CONTRIBUTE.md)
## Features currently being worked on by a contributor
- [#863](https://github.com/breezy-weather/breezy-weather/issues/863) - Make Breezy weather data available through a ContentProvider
- [#14](https://github.com/breezy-weather/breezy-weather/issues/14), [#252](https://github.com/breezy-weather/breezy-weather/issues/252) - New 24-hour fitting charts
## Features lacking an active contributor
- [#10](https://github.com/breezy-weather/breezy-weather/issues/10) - “Add location” page needs a new design, in the spirit of Google Maps where you can select location points on the map, or search manually - No mockup done yet
- [#937](https://github.com/breezy-weather/breezy-weather/issues/937) - Widget overhaul (prerequisite for any new widget improvement) - Some mockups were done but no one is working on it anymore
## Features that will not be implemented
- Paid-only sources, too limited free-tier, or free-tier that requires privacy-invasive information (credit card info, phone number, etc)
- Radar; [please check out this document for alternatives](docs/RADAR.md)
- Adding `standard` flavor or non-free sources to the F-Droid default repo: please use the `standard` flavor from a different store/source instead
- Changes to the [background updates process](docs/UPDATES.md), including but not limited: options for refreshing less than every 30 minutes, every time you open the app, every time you tap on widget, every time you unlock your phone
- “Circular sky” interface: please set a fixed background per location instead
- Publish to Google Play Store: please [check alternatives](INSTALL.md)
- Allow different flavors to be installed in parallel
- Implement features that are no longer available in latest Android versions
- Backport features/fixes from latest Android versions to older Android versions
- Donations: if you have extra money to spare, consider [donating to Open-Meteo](https://github.com/sponsors/open-meteo) to support infrastructure costs and future developments (we currently lack a libre and gratis worldwide alternative for the following features: [Reverse geocoding](https://github.com/open-meteo/geocoding-api/issues/6), [Alerts](https://github.com/open-meteo/open-meteo/issues/351), [Normals](https://github.com/open-meteo/open-meteo/issues/361))
# Translations
Translation is done externally [on Weblate](https://hosted.weblate.org/projects/breezy-weather/breezy-weather-android/#information). Please read carefully project instructions if you want to help.
[](https://hosted.weblate.org/projects/breezy-weather/breezy-weather-android/#information)
English (and regional variants) and French translations are maintained by repo maintainers, but they are open to proofreading/improvements. You will need to make a pull request, as we didn’t find a way to make these languages in suggestion-only mode in Weblate (let us know if you find anything).
# Contact us
* If you’d like to report a bug or suggest a new feature, GitHub discussions or issues are best for organization.
* We’ve also created a Matrix/Element space with a number of different channels for more general discussion: [`#breezy-weather-space:matrix.org`](https://matrix.to/#/#breezy-weather-space:matrix.org).
* If you are not comfortable writing a GitHub discussion/issue in English, you can ask on the channel if someone can help you in your language.
* We also have a dedicated help channel in French: [`#breezy-weather-francais:matrix.org`](https://matrix.to/#/#breezy-weather-francais:matrix.org)
* If you’d prefer a direct channel link instead of a space link, here’s the main Breezy Weather Matrix channel: [`#breezy-weather:matrix.org`](https://matrix.to/#/#breezy-weather:matrix.org)
# License
* [GNU Lesser General Public License v3.0](/LICENSE)
* This License does not grant any rights in the trademarks, service marks, or logos of any Contributor.
* Misrepresentation of the origin of that material is prohibited, and modified versions of such material must be marked in reasonable ways as different from the original version.
When creating a fork, remember to:
- Respect the project’s LICENSE
- Avoid confusion with Breezy Weather app:
- Change the app name
- Change the app icon
- Avoid installation conflicts:
- Change the `applicationId` in [`build.gradle.kts`](https://github.com/breezy-weather/breezy-weather/blob/main/app/build.gradle.kts#L19)
", Assign "at most 3 tags" to the expected json: {"id":"13466","tags":[]} "only from the tags list I provide: [{"id":77,"name":"3d"},{"id":89,"name":"agent"},{"id":17,"name":"ai"},{"id":54,"name":"algorithm"},{"id":24,"name":"api"},{"id":44,"name":"authentication"},{"id":3,"name":"aws"},{"id":27,"name":"backend"},{"id":60,"name":"benchmark"},{"id":72,"name":"best-practices"},{"id":39,"name":"bitcoin"},{"id":37,"name":"blockchain"},{"id":1,"name":"blog"},{"id":45,"name":"bundler"},{"id":58,"name":"cache"},{"id":21,"name":"chat"},{"id":49,"name":"cicd"},{"id":4,"name":"cli"},{"id":64,"name":"cloud-native"},{"id":48,"name":"cms"},{"id":61,"name":"compiler"},{"id":68,"name":"containerization"},{"id":92,"name":"crm"},{"id":34,"name":"data"},{"id":47,"name":"database"},{"id":8,"name":"declarative-gui "},{"id":9,"name":"deploy-tool"},{"id":53,"name":"desktop-app"},{"id":6,"name":"dev-exp-lib"},{"id":59,"name":"dev-tool"},{"id":13,"name":"ecommerce"},{"id":26,"name":"editor"},{"id":66,"name":"emulator"},{"id":62,"name":"filesystem"},{"id":80,"name":"finance"},{"id":15,"name":"firmware"},{"id":73,"name":"for-fun"},{"id":2,"name":"framework"},{"id":11,"name":"frontend"},{"id":22,"name":"game"},{"id":81,"name":"game-engine "},{"id":23,"name":"graphql"},{"id":84,"name":"gui"},{"id":91,"name":"http"},{"id":5,"name":"http-client"},{"id":51,"name":"iac"},{"id":30,"name":"ide"},{"id":78,"name":"iot"},{"id":40,"name":"json"},{"id":83,"name":"julian"},{"id":38,"name":"k8s"},{"id":31,"name":"language"},{"id":10,"name":"learning-resource"},{"id":33,"name":"lib"},{"id":41,"name":"linter"},{"id":28,"name":"lms"},{"id":16,"name":"logging"},{"id":76,"name":"low-code"},{"id":90,"name":"message-queue"},{"id":42,"name":"mobile-app"},{"id":18,"name":"monitoring"},{"id":36,"name":"networking"},{"id":7,"name":"node-version"},{"id":55,"name":"nosql"},{"id":57,"name":"observability"},{"id":46,"name":"orm"},{"id":52,"name":"os"},{"id":14,"name":"parser"},{"id":74,"name":"react"},{"id":82,"name":"real-time"},{"id":56,"name":"robot"},{"id":65,"name":"runtime"},{"id":32,"name":"sdk"},{"id":71,"name":"search"},{"id":63,"name":"secrets"},{"id":25,"name":"security"},{"id":85,"name":"server"},{"id":86,"name":"serverless"},{"id":70,"name":"storage"},{"id":75,"name":"system-design"},{"id":79,"name":"terminal"},{"id":29,"name":"testing"},{"id":12,"name":"ui"},{"id":50,"name":"ux"},{"id":88,"name":"video"},{"id":20,"name":"web-app"},{"id":35,"name":"web-server"},{"id":43,"name":"webassembly"},{"id":69,"name":"workflow"},{"id":87,"name":"yaml"}]" returns me the "expected json"