Skip to content

linuxguy123/advanced-weather-widget

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

114 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Advanced Weather Widget for KDE Plasma 6

A modern, highly customizable weather widget built specifically for KDE Plasma 6.

Why this widget?

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

πŸ“‘ Table of Contents


πŸ“¦ Installation

⚠️ Prerequisites & Dependencies

For the full functionality of this widget, please ensure you have the following Qt6 modules installed for your distribution:

πŸ“ Location & Search

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

πŸ“‘ Radar Map

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.

πŸ› Install from KDE Store (Recommended)

  1. Right-click your Panel or Desktop.
  2. Select Add Widgets... -> Get New Widgets -> Download New Plasma Widgets.
  3. Search for Advanced Weather Widget.
  4. Click Install.

Manual Installation (Development)

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

πŸ–ΌοΈ Screenshots

Panel Layout Styles
Single line
(Single line: A compact, one-row layout for a minimalist look.)

Simple mode
(Simple mode: Displays only the essential icon and current temperature.)

XFCE style
(XFCE style: A multiline display with an automatic scrollbox for detailed info.)

Detailed Widget Layouts
Advanced Weather Widget (Advance mode) Advanced Weather Widget (List mode) (Advanced mode: Choose between modern Cards or a clean List view.)

Simple mode Super Simple mode (Simple modes: Focused views for those who want weather without the tabs.)

Tabs
Forecast tab (Forecast tab)

Radar tab (Radar tab)

✨ Detailed Features

πŸ“ Location Management

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

🌦 Weather Providers & Adaptive Mode

  • Choose from 10 different providers.
  • Adaptive Failover: Automatically cycles through providers if one goes offline, ensuring you never have a widget without data.

πŸ”‘ Entering API Keys

For providers that require an API key, you can enter it in the widget's settings:

  1. Right-click on the widget in your panel or desktop.
  2. Select Configure Advanced Weather Widget.
  3. Navigate to the General settings.
  4. Turn off Adaptive mode and choose your preferred provider.
  5. 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

🌑 Data Points

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

πŸ–₯ Customization

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

🌐 Translation

Translations are welcome! If you would like to help translate the widget into your language, please follow the instructions below.

  1. Download the translation template:

https://github.com/pnedyalkov91/advanced-weather-widget/blob/main/translate/template.pot

  1. Rename the file using your locale code. You can find a list of locale codes here:

https://help.sap.com/docs/SAP_BUSINESSOBJECTS_BUSINESS_INTELLIGENCE_PLATFORM/09382741061c40a989fae01e61d54202/46758c5e6e041014910aba7db0e91070.html

For example:

pt_BR.po
de_DE.po
fr_FR.po
ru_RU.po
  1. Open the .po file in a translation editor such as:
  • Poedit
  • Lokalize (KDE)
  • Kate / Kwrite
  • VS Code
  1. Translate all strings by filling the msgstr "" fields.

Example:

msgid "Configure icon…"
msgstr "Configurar Γ­cone…"
  1. When the translation is ready:
  • open a GitHub Issue and attach the .po file (you may need to compress it as .zip because GitHub blocks .po attachments).

You can check the current translation coverage in translation-status.md.

Translators

Thank you to everyone who contributed translations to this project ❀️


πŸ› Bug Reports & Feedback

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.

External resources

❀️ Support the project

Advanced Weather Widget is developed in my free time.

If you enjoy using it, you can support the project:


πŸ“œ License

This project is licensed under the GNU General Public License v2.0 or later.

About

My bug fixes and updates to the Advanced Weather Widget

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • QML 82.9%
  • JavaScript 16.7%
  • Shell 0.4%