Interactive ICON-D2 RUC, AROME PI & HRRR Wind Map
The app visualizes localized wind forecast data for Germany, France and nearby regions, plus the CONUS area from HRRR. You can switch between ICON-D2 RUC, AROME PI and HRRR using the logo row.
The project uses the ICON-D2 RUC (Rapid Update Cycle) model provided by the Deutscher Wetterdienst (DWD) and AROME PI via Open-Meteo using Météo-France model data. The map overlay utilizes a custom color-scale optimized for the specific velocity ranges relevant to kite and wing foiling.
To our knowledge, this is a unique free implementation providing hourly updated, interactive point-forecast queries from these high-resolution models.
See my article on medium for some more background
⚠️ Disclaimer: Always check the local weather at your spot. Forecasts can be wrong. This project is currently in active development.
Providers
Three rapid-update models are available; switch them with the toggle in the logo row.
| Provider | Area | Resolution | Cycle / steps | Sources |
|---|---|---|---|---|
| ICON-D2 RUC | Germany and Central Europe | 2.2 km | hourly runs, 15 min steps | DWD OpenData |
| AROME PI | France and Western Europe | 2.5 km (1.3 km gusts) | hourly runs, 15 min steps | Météo-France via Open-Meteo |
| HRRR (preview) | CONUS | 3 km | hourly runs, 15 min steps for 6 h, hourly afterwards | NOAA HRRR via Open-Meteo |
HRRR is a preview. Its wind field is not a rendered image but a static tile pyramid published by the hrrr-data pipeline: index.json names the run and a tiles_url template, each tile is an int16-delta payload that the client decodes and draws as a colored field plus arrows (WebGL2 via deck.gl). Point forecasts come from Open-Meteo's gfs_hrrr model and only exist inside CONUS.
Technical Specifications & Advantages of ICON-D2 RUC / Arome PI
Most mainstream consumer weather applications render global or regional models with coarse resolution and slow update cycles. This application visualizes premier high-resolution local models:
| Parameter | ICON-D2 RUC / Arome PI | Standard Global Models (e.g., GFS) |
|---|---|---|
| Horizontal Resolution | 2.2/2.5(1.3) km grid | 13 km – 27 km grid |
| Update Cycle | Hourly (Every 60 minutes) | Every 6 hours |
| Interval | 60/15 min | 60-360 min |
| Data Assimilation | Rapid Update Cycle (RUC) (Continuous assimilation of local radar & station observations) | Intermittent batch assimilation |
| Forecast Range | 28/6 hours | Multi-day extended range |
Arome base wind is only available in the 2.5 km dataset. The forecasts use the 1.3 km resolution for gusts.
Application for Foiling:
Micro-climatic shifts, thermal winds, and localized frontal systems near lakes or coastal structures are typically lost in >10km grids. The 2.2/2.5(1.3) km resolution of the ICON-D2 RUC/Arome PI model captures these thermodynamic anomalies. Updating the dataset hourly ensures near-term tactical wind window forecasts remain accurate.
AROME PI 2.5/1.3 km adds another high-resolution option for nearby regions via Open-Meteo and Météo-France model data.
Architecture & Data Pipeline
The project implements a decoupled, entirely serverless Two-Repository Architecture to eliminate backend hosting costs while maintaining high data throughput.
1. Data Ingestion & Extraction (weather-data)
- Pipeline Branch (
main): A Python-based script triggered hourly via GitHub Actions fetches the latest GRIB2 payload from the DWD Open Data servers and from Open-Meteo. - Processing: The pipeline crops the dataset to the target geographic bounding box, extracts wind speed arrays, and serializes the matrix data.
- Storage Branch (
gh-pages): The extracted data slices are pushed as static JSON structures to the gh-pages branch, acting as a decentralized, free-tier CDN.
2. Frontend Visualization (weather-map)
- The client-side application loads the lightweight spatial arrays on-demand based on the user's selected timeline node.
- Coordinate Interpolation: When a user interacts with the map interface, the application translates the mouse pointer's geospatial coordinate (Latitude/Longitude) to extract the precise point-forecast value from the underlying data matrix.
Development & Contribution
As this is an actively developed project, contributions to optimize the JSON chunking sizes, add more rapid models like Netherlands Harmonie, improve the UI performance under heavy mobile rendering conditions, or add vector-based wind direction overlays or WebGL are welcome.
This project is a private, free, and ad-free open-source web app. It is maintained strictly for hobby purposes and pursues no commercial interests.
- Data Attribution: Deutscher Wetterdienst (DWD) - OpenData.
- AROME Attribution: Open-Meteo using Météo-France model data.
- HRRR Attribution: NOAA HRRR model data, point forecasts via Open-Meteo, wind tiles from the
hrrr-datapipeline. - Author: Chriz76
📄 License & Terms of Use
- Meteorological Data Source: Deutscher Wetterdienst (DWD) – OpenData terms apply to the underlying forecast parameters.
- Software License: Copyright © 2026 by Chriz76. All rights reserved.
This application is provided free of charge for personal and recreational use (e.g., wind/wing foiling planning). However, the source code, custom processing pipelines, and frontend logic remain the intellectual property of the author. You may not redistribute, modify, or commercially exploit this codebase without explicit written permission.
Privacy Policy
Because your privacy matters, this web app does not collect, store, or track any of your personal data. We do not use any marketing or tracking cookies, and there is no user registration required to use this app.
However, to provide this web app in a stable, secure, and fast manner, we rely on modern cloud infrastructure. Due to technical requirements, a minimal amount of data processing occurs automatically in the background:
1. Hosting via GitHub Pages
This web app is hosted as a static site on GitHub Pages (Service Provider: GitHub Inc., 88 Colin P Kelly Jr St, San Francisco, CA 94107, USA; Parent Company: Microsoft Corporation). When you access this app, GitHub automatically collects standard server log files (including your IP address, browser type, and the date and time of access). This is technically necessary to deliver the page securely and to prevent cyber attacks. GitHub/Microsoft is certified under the EU-US Data Privacy Framework, ensuring a GDPR-compliant level of data protection.
2. Security & Content Delivery Network via Cloudflare
Additionally, we use the Content Delivery Network (CDN) provided by Cloudflare (Service Provider: Cloudflare Inc., 101 Townsend St, San Francisco, CA 94107, USA). Cloudflare acts as a security shield between our host server and your browser. During this process, your IP address is briefly processed to block malicious traffic (e.g., DDoS attacks) and to optimize page loading speeds globally. Cloudflare may set technically necessary cookies for security purposes, which do not create user profiles. Cloudflare is also certified under the EU-US Data Privacy Framework.
3. Error Tracking & Application Stability via Sentry
To ensure technical stability, identify code bugs, and prevent app crashes, we use the error-tracking service Sentry (Functional Software, Inc., 45 Fremont Street, 8th Floor, San Francisco, CA 94105, USA).
When a technical error occurs, an anonymized error report is automatically transmitted to Sentry. This includes minimal technical details such as the timestamp, browser version, operating system, and the specific line of code that triggered the error. Sentry is configured to run without setting tracking cookies and immediately anonymizes IP addresses. Functional Software, Inc. is certified under the EU-US Data Privacy Framework.
4. Privacy-Friendly Analytics via Umami
To understand basic usage trends (such as daily visitor counts or model preferences) and improve the user experience, we use the privacy-focused analytics tool Umami.
Umami does not use cookies, does not store any personal data, does not track users across different websites, and does not generate unique persistent IDs. All analytics data is aggregated and completely anonymized.
Legal Basis: The use of these third-party services is based on our legitimate interest (Art. 6 Abs. 1 lit. f GDPR) to offer this hobby project in a secure, high-performing, and reliable manner on the internet.
