πŸš΄β€β™‚οΈ MeteoRide

Plan your routes with detailed weather information

πŸš€ Introduction

MeteoRide is a web application designed for cyclists that lets you load GPX/KML routes and get detailed weather forecasts along the route.

The app automatically computes route steps based on the selected cycling speed and fetches data from multiple weather providers to show temperature, wind, precipitation, humidity, cloudiness, luminosity and more.

It includes automatic fallback options to ensure data even if a provider fails, and lets you compare forecasts from different sources.

It's ideal for planning safe, weather-aware rides.

πŸš€ Getting Started

1. Load a GPX/KML Route

Click the πŸ“ button to select your GPX or KML file. MeteoRide supports standard tracks, routes and waypoints.

πŸ’‘ Tip: You can also use direct URLs with parameters like ?gpx_url= to load routes automatically. For details about sharing routes from iOS or Android check the project page on GitHub.
πŸ”— Export from Komoot/Bikemap: There is a Tampermonkey userscript that adds a button on Komoot and Bikemap to open the current route directly in MeteoRide. Note that GPX downloads on Komoot require a Premium account. See the README for installation instructions.
➑️ Export from MeteoRide to Hammerhead: The project also includes a userscript that lets you export the current GPX from MeteoRide to Hammerhead (dashboard.hammerhead.io) by uploading a raw GPX to a configured share-server and requesting Hammerhead to import the URL. See the project README for installation and configuration details.

2. Configure Date and Time

Select when you plan to do the route. The system snaps to 15-minute intervals automatically.

3. Adjust Speed

Enter your estimated average speed or use the presets: 5, 10, 12, 15, 20 km/h.

4. Choose Interval

Select how frequently you want weather information (15 or 30 minutes).

5. Choose Weather Provider

Select the weather provider you want to use to obtain the data.

πŸ’‘ Automatic Fallback: If your primary provider fails or has no data, MeteoRide automatically switches to Open-Meteo. MeteoRide will notify you with a brief message about the situation (if notifications are enabled in Settings).

6. Compare Dates Mode

This mode allows you to compare weather forecasts between two different dates/times for the same route:

🌀️ Weather Providers & Advantages

Provider Comparison

MeteoRide supports multiple weather providers, each with unique strengths:

Provider Chains

Chains combine the strengths of multiple providers:

πŸ’‘ Tip: Choose based on your needs: real-time accuracy (OpenWeather), local precision (AROME-HD), mountain terrain (MeteoBlue), or long-term planning (Open-Meteo).

🏁 Install as App

MeteoRide can be installed as a Progressive Web App (PWA) on your device for an app-like experience.

Android

  1. Open MeteoRide in Chrome.
  2. Tap the menu (three dots) in the top right.
  3. Select "Add to Home screen".
  4. Confirm by tapping "Add".

iOS (iPhone/iPad)

  1. Open MeteoRide in Safari.
  2. Tap the Share button (square with arrow).
  3. Select "Add to Home Screen".
  4. Tap "Add" in the top right.

Chrome on Desktop

  1. Open MeteoRide in Chrome.
  2. Click the install icon in the address bar or in the menu.
  3. Click "Install".

Edge on Desktop

  1. Open MeteoRide in Edge.
  2. Click the install icon in the address bar.
  3. Click "Install".

Safari on Mac

  1. Open MeteoRide in Safari.
  2. Go to File > Add to Dock.
  3. Or, click the Share button and select "Add to Dock".

πŸ› οΈ Settings

πŸ”‘ API Keys

For MeteoBlue and OpenWeather you need to register and obtain a free API key:

Use the πŸ” Check button to verify your API key works correctly.

πŸ”‘ API Key Tests and Notices

In the settings panel there are Check buttons for MeteoBlue and OpenWeather. When pressed the app makes a simple request and the status is shown next to the field (valid / invalid / quota / HTTP).

There is also a checkbox Show non-critical notices that controls notification verbosity: if enabled you will see informational banners when fallbacks occur due to horizon limits, quota or API errors; if disabled only critical errors are shown.

When a provider exceeds its horizon or fails repeatedly, the app falls back to Open‑Meteo only for the affected steps. This is indicated with a brief notice in the header.

πŸ“ Units

🌐 Languages

The application supports Spanish and English. Select your preferred language in the settings to change the interface and messages.

πŸ“Š Interpreting the Data

🌀️ Weather Table

The table shows information hour by hour:

πŸ—ΊοΈ Interactive Map

πŸ’‘ Interactivity: Click any table column or a wind arrow on the map to see details for that point.

πŸ“± Advanced Features

πŸ”„ Horizontal Scrolling

The weather table is interactive and touch-friendly:

Tip: use the small ⇆ icon that appears to indicate the table has more columns available when scrolling.

πŸŒ… Solar Information

The app automatically shows:

🎯 Smart Fallbacks

MeteoRide handles automatically:

πŸ”— URLs with Parameters

You can use direct links with parameters:

πŸ—ΊοΈ Recent routes (stored locally)

MeteoRide keeps a short list of the most recent GPX files you loaded so you can reload them quickly without re-uploading. This is a local-only feature β€” no routes are sent to any server.

πŸ’Ύ Local cache and performance

Provider responses are stored in localStorage for ~30 minutes per step/hour. This speeds up frequent reloads and reduces requests to rate-limited APIs. You can clear the cache from your browser devtools.

⚠️ Limitations and Tips

🚨 Important Limits

βœ… Best Practices

🚨 Official Weather Alerts

MeteoRidΒΊe can display official weather warnings published by national meteorological services when these are exposed in the alerts of the OpenWeather. To enable alerts you must enter your OpenWeather API Key in Settings and check Show official weather alerts.

⚠️ Important Notice

These alerts are provided for informational purposes only. Do not rely solely on them for safety-critical decisions. Always verify with your national meteorological service or competent authorities before undertaking activity that may be affected by severe weather. OpenWeather may have errors, delays or may omit local notices; MeteoRide does not replace official communications.

οΏ½πŸ› Troubleshooting

❌ Common Issues

πŸ”’ Privacy and Data

πŸ›‘οΈ Protecting your Privacy

MeteoRide runs completely on your device. All settings, preferences and data are stored only in your browser localStorage. Only when using shortcuts to share a GPX will the file be uploaded to Cloudflare. This is necessary for iOS Shortcuts that only accept POST (if you open the file directly from MeteoRide it will not be uploaded since it is processed locally). In any case, the GPX file is deleted automatically after a maximum of two minutes.

🌐 Data Shared with Weather Providers

To obtain forecasts, MeteoRide only shares:

πŸ’‘ Note: Weather providers (Open-Meteo, MeteoBlue, OpenWeather) have their own privacy policies. MeteoRide only acts as a client requesting the forecast data you need.

πŸ—‚οΈ What is stored locally

πŸ“„ License and Credits

πŸ‘¨β€πŸ’» Developer

MeteoRide has been developed by Lockevod.

πŸ“ License

This project is licensed under the MIT License, which means:

πŸ“‹ Source Code: The complete code is available on GitHub. Contributions are welcome!

πŸ™ Technologies and Services

βš–οΈ Disclaimer

MeteoRide is a planning tool. Weather forecasts are estimates and may not be fully accurate. Always use your judgement and verify conditions before heading out. The developer is not responsible for decisions based on this information.

πŸ“ž Support and Contributions

πŸ› Report Issues

🀝 Contribute to the Project

Bikemap, Komoot, OpenWeatherMaps, Openmeteo, Meteoblue and Hammerhead are registerer marks. They can have specific propietary licenses, please if you use this code or the published webapp you have to comply with them. If you don't want you cannot use this code or the app. This code and the webapp are designed with "zero trust" security in mind but it isn't a commercial code or service, the code and web app is provide as is, any liability or warranty is given with this code and webapp. You accept this if you donwload this repo, use the code or use the webapp.

Updated information about this app is always in GitHub. You accept all updated information, liabilities and restrictions in the github page linked if you use this app.

πŸ’‘ Final tip: Weather can change quickly! Use MeteoRide as a guide, but stay flexible and safe on your rides.

πŸ’° Support the Project

If you find MeteoRide useful, consider supporting the project with a donation:

Buy Me A Coffee