An open API service indexing awesome lists of open source software.

https://github.com/breezy-weather/breezy-weather

A Material Design Weather Application
https://github.com/breezy-weather/breezy-weather

Last synced: 6 months ago
JSON representation

A Material Design Weather Application

Awesome Lists containing this project

README

          




Logo

Breezy Weather



API 21+

Kotlin


Jetpack Compose


Material 3 Expressive




License LGPL-3.0

GitHub code size in bytes




Download from GitHub


Download from IzzyOnDroid repo


Download from F-Droid default repo

Breezy 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.

# ⬇️ Download


Get it on GitHub


Get it on Obtainium


Get it on F-Droid


All installation methods



SHA-256 hash of the signing certificate: 29d435f70aa9aec3c1faff7f7ffa6e15785088d87f06ecfcab9c3cc62dc269d8

SHA-256 checksums are also provided per file on the GitHub releases page.











# ✨ Features

- 🌤️ Weather data
- Daily and hourly forecasts up to 16 days
- Precipitation in the next hour
- Severe weather and precipitation alerts
- Temperature / Feels like temperature / Normals
- Precipitation
- Wind
- Air quality
- Pollen & Mold
- Humidity
- UV index
- Visibility
- Pressure
- Sun
- Moon
- 📊 Visualization
- Detailed 24-hour charts
- Material 3 Expressive blocks
- 🏭 More than 50 weather sources supported (full list)
- 🧩 Large selection of widgets
- 🖼️ 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
- 🔁 Opt-in data sharing with other apps (such as Gadgetbridge)
- 🚹 Accessibility

- Localization
- Number formatting (different numeral systems, decimal separator, thousand separator)
- Unit formatting
- Alternate calendar
- Readability
- Good content descriptions for screen readers
- Navigation with screen readers: most things should work, features depending on drag & drop not yet supported
- Custom display settings: basic support

- 🆓 Free and Open Source

- No proprietary blobs/dependencies
- Releases generated by GitHub actions, guaranteeing it matches the source code
- Fully works with Open-Meteo (FOSS source)
- Separate flavor with only sources hosted on FOSS networks

- 🛡️ Privacy-friendly

- 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

# 🛟 Help

* [Frequently Asked Questions / Help](HELP.md)
* [Main screen 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

- [Announcement](https://github.com/breezy-weather/breezy-weather/discussions/2089) - Make Breezy weather data available through a ContentProvider. Currently in testing phase

## 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.

[![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)

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).

For 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.

# ✉️ 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.

Before 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 > Widgets & Live Wallpaper > 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).

Otherwise, 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#L24)