A modern, highly customizable weather widget built specifically for KDE Plasma 6.
- Granular Precision: Uses exact Latitude/Longitude coordinates for local data rather than generic city-level lookups.
- Modern UX: A clean, native-feeling interface with smooth animations and intuitive layouts.
- Feature Rich: From interactive radar maps and air quality to space weather and moon phases - everything is configurable.
- π¦ Installation
- πΌοΈ Screenshots
- β¨ Detailed Features
- π Translation
- π External Resources
- π Entering API Keys
- π Bug Reports & Feedback
- β€οΈ Support
- π License
For the full functionality of this widget, please ensure you have the following Qt6 modules installed for your distribution:
Required for the Location map screen and GeoClue2 auto-detection.
| Distribution | Package Name |
|---|---|
| Fedora / RHEL | qt6-qtlocation |
| openSUSE | qt6-location |
| Arch Linux | qt6-location |
| Debian / Kubuntu / KDE Neon | qml6-module-qtlocation qml6-module-qtpositioning |
Required for the interactive Radar tab (Chromium-based).
| Distribution | Package Name |
|---|---|
| Fedora / RHEL | qt6-qtwebengine |
| openSUSE | qt6-webengine |
| Arch Linux | qt6-webengine |
| Debian / Kubuntu / KDE Neon | qml6-module-qtwebengine |
Note: After installing these, restart your session or run
systemctl --user restart plasma-plasmashell.
- Right-click your Panel or Desktop.
- Select Add Widgets... -> Get New Widgets -> Download New Plasma Widgets.
- Search for Advanced Weather Widget.
- Click Install.
If you prefer to install from source:
git clone https://github.com/pnedyalkov91/advanced-weather-widget.git && cd advanced-weather-widget
kpackagetool6 --type Plasma/Applet --install .
rm -rf ~/.cache/plasmashell/qmlcache
systemctl --user restart plasma-plasmashell
Panel Layout Styles
(Single line: A compact, one-row layout for a minimalist look.)
(Simple mode: Displays only the essential icon and current temperature.)
(XFCE style: A multiline display with an automatic scrollbox for detailed info.)
Detailed Widget Layouts
(Advanced mode: Choose between modern Cards or a clean List view.)
(Simple modes: Focused views for those who want weather without the tabs.)
Tabs
(Forecast tab)
(Radar tab)
- Precision: Automatic detection via GeoClue2/IP or manual search with dual geocoding (Open-Meteo + Nominatim).
- Map Picker: Integrated OpenStreetMap preview to pin your exact location.
- Smart Data: Automatic timezone, altitude detection, and localized city names.
- Choose from 10 different providers.
- Adaptive Failover: Automatically cycles through providers if one goes offline, ensuring you never have a widget without data.
For providers that require an API key, you can enter it in the widget's settings:
- Right-click on the widget in your panel or desktop.
- Select Configure Advanced Weather Widget.
- Navigate to the General settings.
- Turn off Adaptive mode and choose your preferred provider.
- Enter your API key in the corresponding field for your chosen provider.
| Provider | Key Required | Signup Link |
|---|---|---|
| Open-Meteo / MET Norway | No | - |
| OpenWeatherMap | Yes | Sign Up |
| WeatherAPI | Yes | Sign Up |
| Pirate Weather | Yes | Sign Up |
| Tomorrow.io | Yes | Sign Up |
| Visual Crossing | Yes | Sign Up |
| StormGlass | Yes | Sign Up |
| Weatherbit | Yes | Sign Up |
| QWeather | Yes | Sign Up |
- Core: Temp (Current/Apparent/Dew), Wind (Speed/Direction), Humidity, Pressure, Visibility.
- Environment: UV Index, Air Quality (CAQI), Pollen (Universal Index), Space Weather (Kp index, G-index, aurora probability).
- Astronomy: Configurable Sun Arc (Sunrise/Set) and Moon Path (Phases/Rise/Set).
- Alerts: Real-time push notifications from MeteoAlarm, NOAA NWS, and provider-specific sources.
- Dual Temperature: Option to display two different temperature metrics simultaneously (e.g., Actual + Apparent).
- Panel Layouts: Single line, Multiline (XFCE weather applet style with scrollbox), or Simple (compact icon + temp).
- Widget Layouts: Advanced (Details, Forecast and Radar tabs) and Simple (no tabs)
- Themes: 6 icon themes (Symbolic, Font, Flat, 3D, KDE) plus a custom per-item picker.
- Visuals: Fully interactive Radar Map (RainViewer), 16-day daily forecast, and hourly weather forecast.
Translations are welcome! If you would like to help translate the widget into your language, please follow the instructions below.
- Download the translation template:
https://github.com/pnedyalkov91/advanced-weather-widget/blob/main/translate/template.pot
- Rename the file using your locale code. You can find a list of locale codes here:
For example:
pt_BR.po
de_DE.po
fr_FR.po
ru_RU.po
- Open the
.pofile in a translation editor such as:
- Poedit
- Lokalize (KDE)
- Kate / Kwrite
- VS Code
- Translate all strings by filling the
msgstr ""fields.
Example:
msgid "Configure iconβ¦"
msgstr "Configurar Γconeβ¦"- When the translation is ready:
- open a GitHub Issue and attach the
.pofile (you may need to compress it as.zipbecause GitHub blocks.poattachments).
You can check the current translation coverage in translation-status.md.
Thank you to everyone who contributed translations to this project β€οΈ
- German - HolySoap
- Brazilian Portuguese - PauloAlbqrq
- Bulgarian - Petar Nedyalkov (Author)
- Dutch - Heimen Stoffels (vistausss@fastmail.com)
- Russian - Dmaliog
- French - LAZER-TY
- Turkish - herzane52
- Spanish - NecaX
- Chinese (Traditional) - Yo-oo
- Chinese (Simplified) - Guokangz
- Czech - Zero-MF
If you encounter any issues or have suggestions, please open a GitHub Issue. Please include your distribution, Plasma version, and the weather provider you were using.
-
This project uses weather icons and font resources from: https://github.com/erikflowers/weather-icons Licensed under SIL OFL 1.1 (http://scripts.sil.org/OFL)
-
This project uses code from the SunCalc library: https://github.com/mourner/suncalc Copyright (c) Vladimir Agafonkin Licensed under the BSD license
-
The Radar tab uses the RainViewer API for weather radar data: https://www.rainviewer.com/
-
The Radar tab uses Leaflet.js for interactive map rendering: https://leafletjs.com/ Copyright (c) 2010β2024 Vladimir Agafonkin Licensed under BSD 2-Clause License
-
Map tiles provided by OpenStreetMap: https://www.openstreetmap.org/copyright Β© OpenStreetMap contributors, licensed under ODbL
Advanced Weather Widget is developed in my free time.
If you enjoy using it, you can support the project:
- Liberapay: https://liberapay.com/pnedyalkov
- PayPal: https://paypal.me/pnedyalkov91
- Revolut: https://revolut.me/petarnedyalkov91
This project is licensed under the GNU General Public License v2.0 or later.