A weather planning app for drone pilots. OpenDroneWeather fetches a 16-day hourly forecast for any location and scores every hour against your drone's flight limits — so you can see at a glance when it's safe to fly.
- Flight score calendar — a 3-week grid where each day shows colour-coded hourly scores in a single column, giving an instant overview of the week ahead
- Hour-by-hour detail — tap any day to scrub through a full time strip showing wind at 3 altitudes, gusts, temperature, humidity, cloud cover, visibility, and a score breakdown
- Drone profiles — built-in presets for popular DJI models, plus full support for creating and editing custom profiles with your drone's exact operating limits
- Smart scoring — hard blockers (rain, excess wind, temperature extremes) immediately zero out a score; remaining hours are ranked by a weighted multi-factor model
- Sun & golden hour — sunrise, sunset, dawn, dusk, and golden-hour windows are overlaid on the day detail view
- Night flying toggle — optionally restrict scores to daylight hours only
- Flexible units — wind in km/h, m/s, or mph; temperature in °C or °F; distance in km or mi
- Offline support — forecasts are cached locally so previously loaded data is available without a network connection
| Framework | Expo (React Native) with Expo Router |
| State | Zustand |
| Weather data | Open-Meteo — free, no API key required |
| Geocoding | Nominatim / OpenStreetMap |
| Sun calculations | suncalc |
| Animations | react-native-reanimated + react-native-gesture-handler |
| Storage | expo-secure-store / expo-file-system |
| Score | Label | Colour |
|---|---|---|
| ≥ 85 | Excellent | Cyan |
| ≥ 65 | Good | Green |
| ≥ 40 | Marginal | Amber |
| ≥ 1 | Poor | Red |
| 0 | Blocked | Dark red |
A score of 0 (Blocked) means at least one hard limit has been exceeded — rain, wind, or temperature is outside the drone's safe operating range.
npm install
npx expo startScan the QR code with the Expo Go app, or press a / i to open in an Android or iOS simulator.
Weather data provided by Open-Meteo under the CC BY 4.0 licence. Geocoding by Nominatim / OpenStreetMap contributors.



