gshaw labs

Weatherglass

A sky and weather lab: the sky gradient, rain, snow, fog, lightning and stars from Tides, tuned by eye and published as sky.json.

Sky day Night 0% Stops

    How the sky works


    The sky is a four-stop gradient down the screen. The top two stops carry the weather and the time of day; the bottom two stay dark in every combination, so light text reads over all of them. It comes from Tides, Gerry’s tide app, where it sits behind every station.

    Time of day blends. The four skies (dawn, day, dusk and night) are keyframes, not bands. Each coloured sky holds for 30 minutes either side of sunrise or sunset and takes an hour to arrive and an hour to leave, so dawn and dusk get a full hour at strength. That’s a look, not astronomy: civil twilight is too short to show them off. Drag the time of day slowly through sunrise to watch it.

    Weather picks the row and doesn’t blend. A change of weather fades the gradient over a second. Rain, snow, fog and lightning taper over three seconds instead: each drop and flake decides at the top of its fall whether it falls, so rain stopping lets the last drops land, and snow arriving falls in from the top. Stars come out with the night and go out one at a time when cloud rolls in.

    Every particle is a function of its index and the clock, through the same noise as the app, so particle 12 is in the same place here as on the phone at the same instant. Nothing is stored per frame. Under reduced motion nothing moves: stars and fog are drawn still, and rain, snow and lightning are left off, because a frozen raindrop is a scratch on the screen.

    Intensity is the lab’s own control. The app only ever shows an effect at full strength or on its way in or out.

    The palette


    Weatherdawndaydusknight
    clear
    cloudy
    rain
    snow

    WeatherKit’s conditions


    Palette rowEffectLightningWeatherKit conditions
    clear — — clear, frigid, hot, mostlyClear
    cloudy fog — blowingDust, foggy, haze, smoky
    cloudy — — breezy, cloudy, mostlyCloudy, partlyCloudy, windy
    rain heavy-rain — heavyRain, hurricane, tropicalStorm
    rain heavy-rain yes strongStorms, thunderstorms
    rain light-rain — drizzle, sunShowers
    rain rain — rain
    rain rain yes isolatedThunderstorms, scatteredThunderstorms
    snow light-rain — freezingDrizzle
    snow rain — freezingRain
    snow snow — blizzard, blowingSnow, flurries, hail, heavySnow, sleet, snow, sunFlurries, wintryMix

    Using it


    sky.json is the master copy of every number on this page: the palette, the blend timing, the transitions, each effect’s counts, speeds and opacities, and the table above. An app copies it in with a task, the way Tides gets its tide constituents, and keeps its own renderer. A change tuned here reaches the apps as a JSON update. The TypeScript behind this page is the reference renderer.


    Weatherglass • sky.json • © 2026 Gerry Shaw