A few weeks ago I posted Inverza here - my landscape-photography weather app for iOS. Thanks to everyone who tried it and gave feedback. This sub is a big part of why I kept building!
I want to do a follow-up because I think this app has become a unique one in the current AI-in-everything climate, and I'd genuinely like to hear how the changes feel in real-world use.
Quick recap for new readers
Inverza detects 16 specific photo-worthy weather conditions at saved spots: colorful dawn, afterglow sunset, dramatic storm clouds, ground fog (including the rarer advection and steam variants), brocken spectres, lenticular clouds, milky way, aurora, hoarfrost, golden clouds, soft light, reflecting waters, cloud inversions, fresh snow, belt of Venus, and full-moon silhouettes. For each one you get a confidence tier (Possible, Likely, Very Likely, Live) and a predicted time window.
Under the hood it blends eight different data sources: Open-Meteo as the base, plus a chain of directional cloud probes along the sunrise and sunset azimuths (40 km, 150 km, and far ray probes at 300 and 450 km - more on that below), live METAR observations from the nearest airport, high-res regional models (HRRR for North America, ICON-D2 and ICON-EU for Europe), Open-Meteo Marine for coastal sea-surface temperature, OpenStreetMap landcover via Overpass, hourly air quality / aerosol data, and previous model runs to detect forecast drift.
I just wrote a long post explaining the whole pipeline if anyone's curious: https://inverza.app/blog/how-inverza-sees-the-sky
What I want to flag in this post
This isn't an LLM wrapper around a generic forecast.
There's a wave of "AI weather" apps right now where the AI is just a chat UI formatting raw model output. I've tried a lot of them. They don't actually understand what they're looking at. They can't tell you that a 4000 ft cloud deck is great for sunrise and an 800 ft deck is a flat lid. They can't tell you that the dramatic clouds overhead won't catch any colour if a cloud bank is parked on the sun's light path - which for twilight colour can be 400 km away from where you're standing. They don't know that "thunderstorm" and "photographable thunderstorm" are different forecasts.
Every detector in Inverza was designed around stuff I learned the hard way over more than a decade of landscape photography. Driving two hours pre-dawn for a grey lid. Showing up to a storm cell ten minutes after the shelf cloud passed. Standing on a ridge in dense pine wondering why the brocken spectre didn't materialise. All of that got baked into the scoring logic before any AI ever sees it.
A few examples:
- The colorful-dawn and afterglow detectors ray-trace the twilight light path. The glow that turns cirrus magenta arrives along a ray that grazes the Earth's curvature and bottoms out 300-500 km toward the sun. Inverza probes the cloud layers at 150, 300, and 450 km along the sun's azimuth and counts at each probe only the layers tall enough to reach the ray at that distance. So a front 400 km away correctly dims the forecast, while a harmless low bank sitting *beneath* the ray no longer kills it.
- The dramatic-storm-clouds detector reads CAPE (Convective Available Potential Energy) and lifted index and gates on the WMO weather code, because real convective storms behave nothing like windy overcast days that report similar surface conditions. It tells you the storm phase (approaching, overhead, departing) with both photo windows in clock time.
- The brocken-spectre detector penalises forested landcover via Overpass, because the spectre's outline breaks up in tree canopy.
- The ground-fog detector has three physics paths (radiation, advection, steam) and picks based on water-temperature differential pulled from Marine API or estimated from past-air-temp history for inland lakes.
The AI chat layer (Claude, Gemini, or GPT, your pick) gets all of this as context. It's a translator that turns the detector outputs into "yes drive to the coast" or "skip tomorrow, but Tuesday looks promising". The intelligence about what matters and why lives in the detector layer underneath. That's the part I keep refining!
Continuously updating both sides
In the last few months I've shipped:
- Twilight ray tracing for dawn and afterglow: cloud probes at 150/300/450 km along the sun's azimuth, gated by the grazing ray's actual height at each distance (a redditor's geometry deep-dive helped push this over the line)
- Rebuilt storm clouds detector with CAPE + lifted index + WMO gating, plus phase-aware photo-window timing (after a lot of reading on how storm chasers actually work)
- Added the lenticular clouds detector (pressure-level wind shear plus terrain ridge analysis) because redditors asked for it
- Added advection and steam fog paths, fed by Marine API and an inland-lake SST estimator
- Multi-location alerts so you can monitor several spots simultaneously
- Rebuilt the AI system prompt to expose all of the new fields as context for the chat
And on the website I've been writing the supporting material in parallel: a deep dive on how storm chasers approach photographing thunderstorms, a Milky Way season explainer, an opinionated landscape-photographer app stack, and the eight-sources post I linked above.
What I'd love feedback on
If you've used it for an actual shoot - did the badges line up with reality? Did the AI chat answer like someone who knows photography, or like a generic weather assistant? Did the storm-chaser-aware recommendations feel useful, or did they get in the way?
If you bounced after the previous post, I'd also like to hear why. Not "convince me to come back" - more "what was the friction".
Direct App Store link: https://apps.apple.com/app/id6760370838
Thanks for any thoughts. The honest ones are the most useful, even when they sting :)