# PublicCloud – himlen över Örebro Källkoden till **https://publiccloud.se**: en helskärmshimmel som följer solen, månen och det aktuella vädret, med en klocka i mitten och fyra glasrutor runt den. ## Vad sidan gör **Himlen** - **Dag och natt följer klockan.** Dagfilmen spelas från verklig soluppgång till solnedgång och nattfilmen från solnedgång till soluppgång, en bildruta åt gången, med mjuk övertoning mellan rutorna. - **Vädret läggs ovanpå** (Open-Meteo, var 10:e minut): klart (molnen tonas bort), växlande (solen genom molnen), mulet, dimma, duggregn, regn och kraftigt regn med droppar som rinner på "glaset", åska med blixtar och snö. - **Vind** (hastighet, byar, riktning): snett regn, blåsande snö och droppar, vindstråk, höstlöv (sep–nov) och byar. Vyn är vänd mot söder, så västlig vind blåser åt vänster. **Natten** - **Månen** med rätt fas och position. Vid växlande molnighet skärs den av molnen i filmen, eftersom molnen ligger i lagret ovanför månen. - **Stjärnor** som glittrar realistiskt (scintillation, utan strålkors). - **Mulet** ger ett mörkt molntäcke. - **Norrsken** styrs av NOAA:s Kp-index: gröna band med ljus underkant som kommer lågt från horisonten och sveper upp över himlen. - **Nymåne-överraskning:** en egen SVG-siluett av en fotograf som sitter på en månskära med kameran (`img/moon-photographer.svg`). Den visas bara vid nymåne, när det är mörkt och klart. **Fyra rutor** - **Just nu:** väder, temperatur, vind, måne, sol och plats. - **Plats:** karta med zoom (+/−), knappen "Utgå från min plats" (GPS), klick i kartan för att välja plats, och standardplatsen Örebro slott. Allt räknas om för vald plats. - **Kväll & natt:** betyg för stjärnhimlen, chans till norrsken (Kp nu och prognos), meteorregn samt fullmåne och nymåne. - **Fotoljus:** gyllene och blå timmen med väderprognos, månens upp- och nedgång, dimma, regnbåge och nattlysande moln. Textstorleken anpassas automatiskt så att allt får plats. På mobil staplas rutorna. **Prototyp (`?lager=1`):** tre procedurella molnlager som driver med vinden på olika djup (månen och solen ligger mellan lagren), samt animerade SVG-väderikoner i rutorna. ## Struktur ``` site/ public/index.html hela sidan (HTML, CSS, JS – inga byggsteg) public/img/moon-photographer.svg nymåne-överraskningen public/_headers cache-regler (filmerna cachas i ett år → nytt filnamn vid ny film) public/video/ day-v2 / night som WebM (VP9) + MP4 (H.264, reserv för äldre Safari) worker.js Cloudflare Worker: statiska filer + HTTP Range (206) för /video/* (krävs av Safari/iOS) wrangler.jsonc Worker-konfiguration (namn publiccloud-sky) tools/ upscale-slowmo.sh hur filmerna togs fram: Real-ESRGAN x4plus (uppskalning) + RIFE v4.6 (slowmotion) ``` ## Driftsättning Sajten körs som en Cloudflare Worker med statiska filer och custom domain `publiccloud.se`. ```bash cd site export CLOUDFLARE_API_TOKEN=... # konto-token med Workers-rättighet export CLOUDFLARE_ACCOUNT_ID=... npx wrangler deploy ``` ## Testparametrar | Parameter | Exempel | Effekt | |---|---|---| | `t` | `?t=2026-10-10T23:30%2B02:00` | startar klockan vid en viss tid | | `speed` | `?speed=600` | kör klockan snabbare | | `weather` | `?weather=thunder` | tvingar väder: clear, partly, overcast, fog, drizzle, rain, heavyrain, thunder, snow | | `wind`, `winddir` | `?wind=75&winddir=270` | tvingar vind (km/h, grader) | | `kp` | `?kp=7` | tvingar Kp-index (norrsken) | | `nymane` | `?nymane=1` | visar nymåne-överraskningen oavsett månfas (på natten) | | `lager` | `?lager=1` | molnlager + animerade ikoner (prototyp) | | `instant` | `?instant=1` | inga övertoningar (för skärmdumpar) | | `debug` | `?debug=1` | visar bildruta, sol, väder, vind, måne, norrsken | ## Datakällor - Väder och prognos per timme: [Open-Meteo](https://open-meteo.com/) (gratis för icke-kommersiellt bruk) - Kp-index nu och 3-dygnsprognos: [NOAA SWPC](https://www.swpc.noaa.gov/) - Karta: [OpenStreetMap](https://www.openstreetmap.org/copyright) via [Leaflet](https://leafletjs.com/) 1.9.4 (cdnjs, SRI) - Platsnamn: OpenStreetMap Nominatim - Sol- och månberäkningar: formler från SunCalc (Vladimir Agafonkin), inbäddade i sidan - Meteorregn: American Meteor Society / IMO:s kalendrar