1. Installing & Updating
The plugin lives at /software/windy-ifr-plugin. Four steps total: open windy.com/dev → paste the plugin URL → approve → launch. The plugin is published to Windy's gallery CDN as a private build during beta; once approved into the public gallery, developer mode won't be needed.
You only do this once per browser. Subsequent visits to Windy show the plugin in the regular plugin menu.
Updating: each release is published at its own URL, so reloading the page never updates the plugin. When a newer version exists, a banner appears at the top of the panel — Newer version available (x.y.z) — with a Reinstall link to the install page. Re-run the same four install steps with the new URL and you're current. A What's New card lists everything that changed since the version you last ran.
2. Airport Entry
The Departure and Destination fields autocomplete from a worldwide airport database (~48,000 airports, all large/medium/small types — all US public airports are covered). The dataset loads on first plugin launch and caches in your browser. Type any portion of an ICAO code or name; pick from the dropdown. US airports without an ICAO code are searchable by their FAA identifier (e.g., a 3- or 4-character local ID).
Tab out of the field after typing — if your input exactly matches an identifier, the airport auto-selects on blur. The Find route button only enables when both fields hold a real airport.
Tip: recently-used airports appear at the top of the dropdown. The plugin remembers them across sessions (in your browser only).
3. Aircraft Setup
The Aircraft dropdown now ships with nearly 40 profiles, sorted alphabetically, each carrying approximate POH cruise values. The fleet spans the GA spectrum:
- Pistons — Cessna 172S/177RG/182/T206H/T210/TTx, Piper Archer/Saratoga/Seneca/Matrix/Mirage, Cirrus SR20/SR22/SR22T, Beechcraft Bonanza G36/V35B/Baron 58, Mooney M20J/M20R/M20TN, Diamond DA40/DA42/DA62, Van's RV-9A/RV-10
- Turboprops — TBM 940, Pilatus PC-12, Piper M500/M600/M700, King Air C90/350i, Kodiak 100, Cessna Caravan
- Light jets — Citation M2, Phenom 100EV, Cirrus SF50 Vision Jet
Add or edit aircraft: the editor next to the dropdown lets you correct any performance number or add a type we don't ship. Name, cruise speed, service ceiling, climb/descent rates, and cruise fuel burn are required; usable fuel, climb fuel flow, and typical cruise altitudes are optional but feed the fuel model and cruise recommendation. Your aircraft save in your browser and survive updates.
Switching the aircraft updates the flight envelope (the magenta climb-cruise-descent line on the profile chart), the service ceiling enforcement (the cruise input clamps to the ceiling), the cruise recommendation, and the fuel & range model.
Cruise altitude sets your planned flight level in feet. The chart, advisories, route colors on the map, and recommendation all key off this value. Change it any time — the entire UI refreshes within a second.
4. Departure Time
The ETD field sets your planned departure (local time). Setting it scrubs Windy's timeline to match, and every weather sample along the route is taken at your estimated time over that point — the forecast 200 NM out is for when you'll actually be there, not for departure time.
Your ETD stays put when you switch Windy map layers. Layers that only show current conditions (radar, satellite) display a small warning that they can't reflect your departure time.
ETD also anchors Compare Days — the five candidate days center on your chosen departure day and time.
5. Route Generation
Click Find route. The plugin queries multiple route providers in parallel:
- FAA Preferred Routes — published high-altitude routes between major city pairs. Highest confidence (85%) when found. Multiple routes typically returned.
- Historical / mock — fallback for city pairs without an FAA preferred route. Lower confidence.
- DIRECT — always last in the list as the great-circle fallback.
Each result shows the route string (e.g., FORCK3 FORCK ELD MERDN ORRKK HOBTT3), provider, and confidence. The active route (the one displayed on the chart + map) has a magenta ▶ marker. Click any route in the list to make it active; the chart, map polyline, and advisories rebuild against the new route.
Custom routes: an optional field below the list accepts your own route string — paste a cleared route or one from your EFB and the plugin analyzes it like any other.
Real waypoint geometry: the plugin parses the route string token-by-token against an FAA NASR FIX database (~70,000 named fixes). Known fixes contribute to the polyline; unrecognized tokens (SIDs, airways, STAR names) are skipped. The result is a multi-segment polyline through the real fixes — not a great-circle approximation.
6. Vertical Profile
The chart below the routes list shows the vertical slice through the active route, sampled at 12 points along the great-circle/waypoint path:
- Green polygon — terrain elevation along the route.
- Translucent white bands — cloud layers, with horizontal blur for a soft cloud-like appearance.
- Magenta / blue / pale-cyan rectangles — icing zones (severe / moderate / light).
- Yellow / orange / red hatched bands — turbulence zones (light / moderate / severe). Derived from a Richardson-number heuristic on Windy's wind + temperature data.
- Cyan dashed line — freezing level along the route.
- White dashed line + label — your selected cruise altitude.
- Magenta envelope — your aircraft's climb-cruise-descent path. Truncates if the route is too short to reach your cruise. Clamps to the aircraft's service ceiling.
- Winds Aloft table — route-averaged head/tail/crosswind at FL180, FL200, FL250, and your cruise altitude.
A legend button on the chart explains every color and band, so you don't need to memorize the list above.
Hover anywhere on the chart for an inline tooltip showing terrain, cloud, icing, turb, and wind data at that exact route position + altitude. Wheel zooms in/out; click-drag pans.
7. Advisories & Pilot Summary
Above the chart, the pilot summary banner distills the route into 3-5 sentences: cruise + aircraft, route-averaged tailwind, top hazards. The left border color reflects the highest-severity advisory present.
Below the chart, the Advisories panel lists up to 5 prioritized concerns. Each advisory has a severity (critical / warning / info) and a category (icing / turbulence / terrain / cloud / freezing / aircraft). Examples:
- Severe icing FL150-FL190 — critical, icing
- Cruise altitude icing conflict — critical, icing (fires when cruise altitude intersects any icing zone)
- Top of climb at 55 NM (16 min) — info, aircraft
- Cloud tops FL220 — info, cloud
- Freezing level 11,500 ft — info, freezing
Advisories sort by severity then by category priority (icing > turbulence > terrain > aircraft > cloud > freezing). The display is capped at 5 — the most-actionable surface to the top.
About icing severity: as of 0.15, icing is temperature-weighted — supercooled cloud between roughly −2°C and −12°C scores highest, tapering to nothing at 0°C and −16°C. Severe is reserved for freezing-rain signatures (a sub-freezing saturated layer under a warm nose aloft); ordinary cold stratus now reads light or moderate, so a severe flag means something physically distinct is going on.
8. Cruise Recommendation
Next to the cruise altitude input, a magenta-bordered callout shows the plugin's recommended cruise for the active route + aircraft. Format:
Recommended: FL250
+19 kt tailwind · no icing · cloud tops FL220
[Use this]
The engine walks 1,000-ft increments from 3,000 ft to your aircraft's service ceiling. Each candidate is scored on:
- Wind — signed tailwind/headwind at that altitude
- Icing — severity-weighted penalty if cruise intersects an icing zone
- Turbulence — same for turbulence
- Cloud — penalty for cruise inside a BKN or OVC layer
- Terrain — rule out below 1,000 ft AGL; mild penalty at 1,000-2,000 ft AGL
- Typical altitudes — a soft preference for the aircraft's usual operating band, so a turboprop isn't sent to 4,000 ft (or a 182 to its service ceiling) just to chase wind
- Service ceiling — hard rule-out
Click Use this to copy the recommendation into the cruise input. The button hides when your current cruise already matches the recommendation.
9. Fuel & Range
The collapsible Fuel & range section turns the wind picture into a range answer. Enter your fuel on board in gallons — the field is free-entry (the aircraft profile's usable fuel only seeds the default; it never caps what you type, so partial fuel or ferry tanks both work).
The plugin models the climb separately (heavier burn from the climb fuel flow, when the profile has one), then cruise burn against the route-averaged winds at your cruise altitude. The readout tells you one of two things:
- Destination reachable — plus how much usable range you'd have to spare past it.
- Reserve point — if the destination is out of reach, a marker on the map shows where you'd dip into a 1-hour reserve.
A reachable-area ring overlay shows where today's winds aloft and your remaining fuel can actually take you. It's scrubbable: anchor it anywhere along the route and it shrinks as fuel depletes downstream. The ring and the reserve point share the same route winds, so they always agree.
A footnote under the readout states the assumptions used — climb-aware vs. cruise-only burn, wind-adjusted vs. still-air — so you know how much to trust the number.
10. Map Interaction
The active route appears on the Windy map as a polyline with sub-segments colored by hazard at your cruise altitude:
- Teal — clear segment, no hazards at cruise
- Gray — cruise inside a BKN/OVC cloud layer
- Yellow / orange / red — light / moderate / severe turbulence at cruise
- Pale cyan / blue / magenta — light / moderate / severe icing at cruise
Endpoint markers show your departure (green) and arrival (red) airports. Intermediate fixes get small magenta dots with their ident labels. When fuel on board can't reach the destination, the reserve point marker shows where the 1-hour reserve begins, and the reachable-area ring (when enabled) draws your wind-adjusted range from any point along the route.
Bidirectional sync: hover the chart → a yellow marker tracks the corresponding geographic position on the map. Hover the colored polyline on the map → the chart's yellow crosshair tracks smoothly along the route, with the data tooltip pinned to the chart's top-right corner.
The map auto-fits the route on first load and re-fits on window resize. Switching aircraft or cruise altitude does NOT re-zoom the map (your framing stays put).
11. Comparing Routes
With multiple routes in the list, click Compare routes. The plugin computes a vertical slice for each route (~2-3 seconds per route, ~10-15 seconds for 5 routes) and scores them:
- BEST WIND — most tailwind / least headwind at your cruise altitude
- LOWEST ICING — least NM of route inside an icing zone at cruise
- LOWEST TURB — same for turbulence
- BEST TERRAIN — highest minimum-clearance from terrain
- OVERALL BEST — top overall score
Each route gets a colored badge + a one-line reason ("+19 kt tail · 12 NM icing") + a normalized 0-100 score. The non-active routes appear on the map as gray dashed polylines alongside your selected route, so you see at a glance how each alternate diverges.
Click a different route in the list to make it active; the previously active one flips to a gray dashed alternate. Scoring is keyed to your cruise altitude + aircraft — changing either flags the comparison as stale; click Recompare to refresh.
12. Comparing Days
Same trip, different day? The collapsible Compare days section rates five departure days centered on your ETD (two before, two after — sliding forward so no candidate is in the past). Each card shows:
- A weather rating — Favorable (green), Mixed (amber), or Adverse (red)
- Up to two headline concerns, tagged by flight phase ("Cruise: moderate icing FL180-FL220", "Low-level: moderate turbulence")
Ratings come from a severity-weighted hazard score: each hazard contributes by category, severity, how much of the route it covers, and whether it sits at your cruise altitude — so a single patch of en-route weather no longer condemns a whole day.
By default, low-level climb/descent turbulence is excluded from the rating (terminal bumps shouldn't dominate a day's score); a checkbox adds it back. Tap any day to load it — ETD and the whole forecast shift to that day.
This is a weather comparison, not a go/no-go decision. The card says so, and we mean it — it ranks days against each other for your route, nothing more.
14. Known Limitations
- Beta software. Bugs may exist. Report at feedback@snickitybit.com or via the in-app Send feedback button.
- Airway expansion not implemented. Tokens like
Q34,J103aren't expanded into their constituent fixes — the polyline draws a straight line between the fixes on either side. - SID/STAR procedures not expanded. Tokens like
FORCK3(SID name) are skipped. The route polyline starts at the first resolved fix. - Turbulence is derived, not forecast. Computed from a Richardson-number heuristic on Windy's wind + temperature data across pressure levels. Accurate at strong shear bands, less reliable at finer scales. Not a substitute for AIRMET TANGO / SIGMET data.
- Icing is derived, not forecast. Computed from Windy's humidity + temperature fields, not from icing products like CIP/FIP. It's been calibrated against real soundings, but it is not a substitute for AIRMET ZULU, SIGMETs, or PIREPs.
- Aircraft POH values are approximate. Use real performance data for your specific airframe + density altitude. The plugin numbers are reasonable mid-range cruise estimates for planning, not a substitute for the POH. The same goes for fuel & range — verify against your own fuel planning.
- Decision support only. See the disclaimer on the software page.
- Clicking the map polyline triggers Windy's wind-tooltip popup (Windy's own feature). Hover-driven sync between chart and map works around this — hover the polyline rather than clicking it.
15. Privacy & Telemetry
The beta sends a small amount of telemetry to help us improve it:
- Usage events via Firebase Analytics (Google) — plugin opened, route searched/computed, aircraft changed, cruise changed, route selected, compare clicked, recommendation accepted, exports and shares. Route events include the departure/destination identifiers, aircraft type, and cruise altitude, plus the plugin version — this tells us which kinds of trips and aircraft the planner is being used for, so we can prioritize.
- Crash reports via our Firestore database — JavaScript error messages + stack traces + browser user agent + plugin URL.
We don't collect your name, email, location, or any account identifier — there is no sign-in, and nothing ties events to you personally beyond the random per-browser instance ID Firebase Analytics assigns.
To opt out: don't install the plugin during the beta. A user-facing opt-out toggle is on the roadmap.
16. Feedback
This is a beta. Your feedback drives the roadmap.
The fastest path is the Send feedback button in the plugin's header — it delivers straight to us with your plugin version attached. Or email:
Email feedback@snickitybit.com
Especially useful: bug reports with the route + aircraft + cruise altitude + browser, feature requests for advisory rules or scoring weights, and notes on what reads cleanly vs. what doesn't.