Skip to content

feat(weather): add Bright Sky provider - #4306

Merged
khassel merged 2 commits into
MagicMirrorOrg:developfrom
KristjanESPERANTO:brightsky
Oct 14, 2026
Merged

khassel merged 2 commits into
MagicMirrorOrg:developfrom
KristjanESPERANTO:brightsky

Conversation

@KristjanESPERANTO

@KristjanESPERANTO KristjanESPERANTO commented Oct 13, 2026 •

Copy link
Copy Markdown
Collaborator

Unfortunately, the original PR #4291 was closed, so I picked up its first commit and gave it a bit of polish.

Bright Sky is a really cool project: it makes weather data from the German Weather Service available through an open API, with no API key needed.

A big thank-you to @ms-zone-41 for the original implementation! 😃

khassel pushed a commit that referenced this pull request Oct 13, 2026
The e2e test "calendar with secrets" fails in #4306 (expected 8,
received 6).

The test used a public holiday calendar. Since October 12, that calendar
only has 3 upcoming events instead of 4, so the count is wrong.

With this change the test uses a local mock calendar with an endless
daily event. This always gives 10 events per calendar, so the expected
count is 20.
ms-zone-41 and others added 2 commits October 14, 2026 08:34
Adds a server-side provider for Bright Sky (https://brightsky.dev), a free
JSON API for the open data of the German Meteorological Service (DWD).
It needs no API key and gives very good results for Germany, which so far
has no dedicated provider.

- current: latest station observation (/current_weather)
- hourly: MOSMIX forecast records (/weather)
- forecast/daily: hourly records aggregated into local calendar days.
  Bright Sky records describe the previous hour, so the 00:00 record
  counts towards the previous day. Today keeps its already elapsed hours,
  so min/max and precipitation cover the whole day and today does not
  disappear late in the evening.

Builds on the WeatherProvider base class, uses the shared provider
utilities (SunCalc sun times, km/h -> m/s) and requests the date range
via urlFactory, so it stays current across midnight.
@khassel
khassel merged commit a6ac00e into MagicMirrorOrg:develop Oct 14, 2026
13 checks passed
@KristjanESPERANTO
KristjanESPERANTO deleted the brightsky branch October 15, 2026 14:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants