{"id":13642301,"url":"https://github.com/breezy-weather/breezy-weather","last_synced_at":"2026-02-01T12:02:18.594Z","repository":{"id":41862553,"uuid":"482265185","full_name":"breezy-weather/breezy-weather","owner":"breezy-weather","description":"A Material Design Weather Application","archived":false,"fork":false,"pushed_at":"2025-05-01T12:26:01.000Z","size":1033765,"stargazers_count":6875,"open_issues_count":84,"forks_count":223,"subscribers_count":40,"default_branch":"main","last_synced_at":"2025-05-01T12:28:39.748Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"WangDaYeeeeee/GeometricWeather","license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/breezy-weather.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2022-04-16T13:45:06.000Z","updated_at":"2025-05-01T12:27:33.000Z","dependencies_parsed_at":"2023-09-28T21:31:10.677Z","dependency_job_id":"84d492c5-3ea3-47fd-adba-090280af1216","html_url":"https://github.com/breezy-weather/breezy-weather","commit_stats":null,"previous_names":["papjul/breezy-weather","papjul/geometricweather","breezy-weather/breezy-weather"],"tags_count":174,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/breezy-weather%2Fbreezy-weather","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/breezy-weather%2Fbreezy-weather/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/breezy-weather%2Fbreezy-weather/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/breezy-weather%2Fbreezy-weather/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/breezy-weather","download_url":"https://codeload.github.com/breezy-weather/breezy-weather/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253747688,"owners_count":21957795,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-02T01:01:29.626Z","updated_at":"2026-02-01T12:02:18.588Z","avatar_url":"https://github.com/breezy-weather.png","language":"Kotlin","funding_links":["https://github.com/sponsors/open-meteo"],"categories":["🍏 Health \u0026 Lifestyle","Kotlin","Android Kotlin Project Showcase","others","Android应用","Atmosphere","Android"],"sub_categories":["🌦️ Weather","资源传输下载","Meteorological Observation and Forecast","Other"],"readme":"\u003cdiv align=\"center\"\u003e\n\u003cbr /\u003e\n\u003cimg src=\"app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp\" alt=\"Logo\" /\u003e\n\u003c/div\u003e\n\n\u003ch1 align=\"center\"\u003eBreezy Weather\u003c/h1\u003e\n\n\u003cbr /\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg alt=\"API 21+\" src=\"https://img.shields.io/badge/Api%2021+-50f270?logo=android\u0026logoColor=black\u0026style=for-the-badge\" /\u003e\n  \u003ca href=\"https://kotlinlang.org/\"\u003e\n    \u003cimg alt=\"Kotlin\" src=\"https://img.shields.io/badge/Kotlin-a503fc?logo=kotlin\u0026logoColor=white\u0026style=for-the-badge\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://developer.android.com/compose\"\u003e\n    \u003cimg alt=\"Jetpack Compose\" src=\"https://img.shields.io/static/v1?style=for-the-badge\u0026message=Jetpack+Compose\u0026color=4285F4\u0026logo=Jetpack+Compose\u0026logoColor=FFFFFF\u0026label=\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://m3.material.io/\"\u003e\n    \u003cimg alt=\"Material 3 Expressive\" src=\"https://custom-icon-badges.demolab.com/badge/m3%20expressive-lightblue?style=for-the-badge\u0026logoColor=333\u0026logo=material-you\" /\u003e\n  \u003c/a\u003e\n  \u003cbr /\u003e\n  \u003ca href=\"https://github.com/breezy-weather/breezy-weather/blob/main/LICENSE\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/license/breezy-weather/breezy-weather?style=for-the-badge\" alt=\"License LGPL-3.0\" /\u003e\n  \u003c/a\u003e\n  \u003cimg src=\"https://img.shields.io/github/languages/code-size/breezy-weather/breezy-weather?style=for-the-badge\" alt=\"GitHub code size in bytes\" /\u003e\n  \u003cbr /\u003e\u003cbr /\u003e\n  \u003ca href=\"https://github.com/breezy-weather/breezy-weather/releases\"\u003e\n      \u003cimg src=\"https://img.shields.io/github/v/release/breezy-weather/breezy-weather?color=purple\u0026include_prereleases\u0026logo=github\u0026style=for-the-badge\" alt=\"Download from GitHub\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://apt.izzysoft.de/fdroid/index/apk/org.breezyweather/\"\u003e\n      \u003cimg src=\"https://img.shields.io/endpoint?url=https://apt.izzysoft.de/fdroid/api/v1/shield/org.breezyweather?color=purple\u0026include_prereleases\u0026logo=FDROID\u0026style=for-the-badge\" alt=\"Download from IzzyOnDroid repo\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://f-droid.org/packages/org.breezyweather/\"\u003e\n      \u003cimg src=\"https://img.shields.io/f-droid/v/org.breezyweather?color=purple\u0026include_prereleases\u0026logo=FDROID\u0026style=for-the-badge\" alt=\"Download from F-Droid default repo\" /\u003e\n  \u003c/a\u003e\n\u003c/div\u003e\n\n\n\u003ch4 align=\"center\"\u003eBreezy Weather is a feature-rich free and open source Material 3 Expressive weather app with well-though-out visualizations, supporting forecast, observations, nowcasting, air quality, pollen, alerts, from more than 50 weather sources.\u003c/h4\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n# ⬇️ Download\n\n\u003ca href=\"https://github.com/breezy-weather/breezy-weather/releases\"\u003e\n\u003cimg src=\"https://user-images.githubusercontent.com/69304392/148696068-0cfea65d-b18f-4685-82b5-329a330b1c0d.png\"\nalt=\"Get it on GitHub\" align=\"center\" height=\"80\" /\u003e\u003c/a\u003e\n\n\u003ca href=\"https://github.com/breezy-weather/breezy-weather/blob/main/INSTALL.md#obtainium\"\u003e\n\u003cimg src=\"https://github.com/ImranR98/Obtainium/blob/main/assets/graphics/badge_obtainium.png\"\nalt=\"Get it on Obtainium\" align=\"center\" height=\"54\" /\u003e\n\u003c/a\u003e\n\n\u003ca href=\"https://github.com/breezy-weather/breezy-weather/blob/main/INSTALL.md#f-droid-client\"\u003e\n\u003cimg src=\"https://f-droid.org/badge/get-it-on.png\"\nalt=\"Get it on F-Droid\" align=\"center\" height=\"80\" /\u003e\u003c/a\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n    \u003cp\u003e\u003ca href=\"https://github.com/breezy-weather/breezy-weather/blob/main/INSTALL.md\"\u003e\u003cstrong\u003eAll installation methods\u003c/strong\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cp\u003e\u003cstrong\u003eSHA-256 hash of the signing certificate:\u003c/strong\u003e 29d435f70aa9aec3c1faff7f7ffa6e15785088d87f06ecfcab9c3cc62dc269d8\u003cbr /\u003e\n  SHA-256 checksums are also provided per file on the \u003ca href=\"https://github.com/breezy-weather/breezy-weather/releases\"\u003eGitHub releases page\u003c/a\u003e.\u003c/p\u003e\n\u003c/div\u003e\n\n\u003chr /\u003e\n\n\u003cdiv align=\"center\"\u003e\n    \u003cimg src=\"fastlane/metadata/android/en-US/images/phoneScreenshots/01-main-header-light.png\" alt=\"\" style=\"width: 300px\" /\u003e\n    \u003cimg src=\"fastlane/metadata/android/en-US/images/phoneScreenshots/02-main-header-dark.png\" alt=\"\" style=\"width: 300px\" /\u003e\n    \u003cimg src=\"fastlane/metadata/android/en-US/images/phoneScreenshots/03-main-blocks-1.png\" alt=\"\" style=\"width: 300px\" /\u003e\n    \u003cimg src=\"fastlane/metadata/android/en-US/images/phoneScreenshots/04-main-blocks-2.png\" alt=\"\" style=\"width: 300px\" /\u003e\n    \u003cimg src=\"fastlane/metadata/android/en-US/images/phoneScreenshots/05-settings.png\" alt=\"\" style=\"width: 300px\" /\u003e\n    \u003cimg src=\"fastlane/metadata/android/en-US/images/phoneScreenshots/06-sources.png\" alt=\"\" style=\"width: 300px\" /\u003e\n    \u003cimg src=\"fastlane/metadata/android/en-US/images/phoneScreenshots/07-details.png\" alt=\"\" style=\"width: 300px\" /\u003e\n\u003c/div\u003e\n\n# ✨ Features\n\n- 🌤️ Weather data\n  - Daily and hourly forecasts up to 16 days\n  - Precipitation in the next hour\n  - Severe weather and precipitation alerts\n  - Temperature / Feels like temperature / Normals\n  - Precipitation\n  - Wind\n  - Air quality\n  - Pollen \u0026 Mold\n  - Humidity\n  - UV index\n  - Visibility\n  - Pressure\n  - Sun\n  - Moon\n- 📊 Visualization\n  - Detailed 24-hour charts\n  - Material 3 Expressive blocks\n- 🏭 More than 50 weather sources supported (\u003ca href=\"docs/SOURCES.md\"\u003efull list\u003c/a\u003e)\n- 🧩 Large selection of widgets\n- 🖼️ Live wallpaper\n- 📦 Custom icon packs\n  - [Geometric Weather icon packs](https://github.com/breezy-weather/breezy-weather-icon-packs/blob/main/README.md)\n  - Chronus Weather icon packs\n- 🌙 Automatic dark mode\n- 🔁 Opt-in data sharing with other apps (such as Gadgetbridge)\n- \u003cdetails\u003e\u003csummary\u003e🚹 Accessibility\u003c/summary\u003e\n\n  - Localization\n    - Number formatting (different numeral systems, decimal separator, thousand separator)\n    - Unit formatting\n    - Alternate calendar\n  - Readability\n    - Good content descriptions for screen readers\n    - Navigation with screen readers: most things should work, features depending on drag \u0026 drop not yet supported\n    - Custom display settings: basic support\n\u003c/details\u003e\n\n- \u003cdetails\u003e\u003csummary\u003e🆓 Free and Open Source\u003c/summary\u003e\n\n  - No proprietary blobs/dependencies\n  - Releases generated by GitHub actions, guaranteeing it matches the source code\n  - Fully works with Open-Meteo (FOSS source)\n  - Separate flavor with only sources hosted on FOSS networks\n\u003c/details\u003e\n\n- \u003cdetails\u003e\u003csummary\u003e🛡️ Privacy-friendly\u003c/summary\u003e\n\n  - No personal data collected by the app ([link to app privacy policy](https://github.com/breezy-weather/breezy-weather/blob/main/PRIVACY.md))\n  - Multiple sources are available, with links to their privacy policies for transparency\n  - Current location is optional and not added by default\n  - If using current location, an IP location service can be used instead of GPS to send less accurate coordinates to weather source\n  - No trackers/automatic crash reporters\n\u003c/details\u003e\n\n\n# 🛟 Help\n\n* [Frequently Asked Questions / Help](HELP.md)\n* [Main screen explanations](docs/HOMEPAGE.md)\n* [Weather sources comparison](docs/SOURCES.md)\n\n\n# 🤝 Contribute\n\nPull 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.\n\n* [Contribution guide (includes a guide to create a new weather source)](CONTRIBUTE.md)\n\n## Features currently being worked on by a contributor\n\n- [Announcement](https://github.com/breezy-weather/breezy-weather/discussions/2089) - Make Breezy weather data available through a ContentProvider. Currently in testing phase\n\n## Features lacking an active contributor\n\n- [#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\n- [#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\n\n## Features that will not be implemented\n\n- Paid-only sources, too limited free-tier, or free-tier that requires privacy-invasive information (credit card info, phone number, etc)\n- Radar; [please check out this document for alternatives](docs/RADAR.md)\n- Adding `standard` flavor or non-free sources to the F-Droid default repo: please use the `standard` flavor from a different store/source instead\n- 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\n- “Circular sky” interface: please set a fixed background per location instead\n- Publish to Google Play Store: please [check alternatives](INSTALL.md)\n- Allow different flavors to be installed in parallel\n- Implement features that are no longer available in latest Android versions\n- Backport features/fixes from latest Android versions to older Android versions\n- 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))\n\n\n# 🌍 Translations\n\nTranslation 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.\n\n[![Translation progress report](https://hosted.weblate.org/widget/breezy-weather/breezy-weather-android/multi-auto.svg)](https://hosted.weblate.org/projects/breezy-weather/breezy-weather-android/#information)\n\nEnglish (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).\n\nFor unit formatting, we use [Unicode data](https://www.unicode.org/cldr/charts/47/summary/root.html) as much as possible. If you believe there is an error, please [open a discussion](https://github.com/breezy-weather/breezy-weather/discussions/categories/general) with evidences that the changes you suggest is the recommendation for your language.\n\n\n# ✉️ Contact us\n\n* If you’d like to report a bug or suggest a new feature, GitHub discussions or issues are best for organization.\n* 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).\n  * 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.\n    * We also have a dedicated help channel in French: [`#breezy-weather-francais:matrix.org`](https://matrix.to/#/#breezy-weather-francais:matrix.org)\n  * 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)\n\n\n# 📜 License\n\n* [GNU Lesser General Public License v3.0](/LICENSE)\n* This License does not grant any rights in the trademarks, service marks, or logos of any Contributor.\n* 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.\n\nBefore creating a fork, check if the intent action `nodomain.freeyourgadget.gadgetbridge.ACTION_GENERIC_WEATHER` can cover your need (for example, you want to re-use our weather data in your own customized widget). It can be enabled from Settings \u003e Widgets \u0026 Live Wallpaper \u003e Data sharing. You can also [help testing our `ContentProvider` exposing the full weather data of Breezy Weather](https://github.com/breezy-weather/breezy-weather/discussions/2089).\n\nOtherwise, remember to:\n\n- Respect the project’s LICENSE\n- Avoid confusion with Breezy Weather app:\n  - Change the app name\n  - Change the app icon\n- Avoid installation conflicts:\n  - Change the `applicationId` in [`build.gradle.kts`](https://github.com/breezy-weather/breezy-weather/blob/main/app/build.gradle.kts#L24)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbreezy-weather%2Fbreezy-weather","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbreezy-weather%2Fbreezy-weather","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbreezy-weather%2Fbreezy-weather/lists"}