summaryrefslogtreecommitdiff
path: root/index.html
AgeCommit message (Collapse)Author
14 hoursAdd synoptic-morph: 30-day rolling morph timelapseSt33v
synopticMorph.sh: rolling-cache implementation. On each run: 1. Pick the last WINDOW_DAYS*4 charts from the archive. 2. For each adjacent pair, fill any missing pair-morph (cached at /mnt/enclave/synoptic/pairs/<chartA>__<chartB>/p_NNNN.png). 3. Evict pair dirs whose slug isn't in the current window. 4. Symlink frames into a temp seq dir with LINGER on each source chart and DWELL on the latest, fade-in 1s and fade-out 2s. 5. Encode to /srv/www/pestrel/morph.mp4 with ffmpeg/h264. Bootstrap: ~50 min CPU on first run (119 pair morphs at ~25s each). Steady state: ~1 min/cycle (1 new pair + concat + encode). synoptic-morph.service: oneshot, TimeoutStartSec=2h to cover the bootstrap, Nice=10 + IOSchedulingClass=idle so it doesn't fight the system for CPU/disk. synoptic.service gains OnSuccess=synoptic-morph.service so the chain fires automatically after each successful chart fetch. morph.html: points at /morph.mp4 now. index.html: "Three-day history" button renamed to "Monthly history", URL /morph.html. setup.sh: installs the new unit + script, provisions /mnt/enclave/synoptic/{pairs,out} when the enclave mount is present. .gitignore: drop .claude/ (transient harness state). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
20 hoursAdd Canberra and Cairns radars; cross-page navSt33v
Two new product codes: IDR403 (Canberra) and IDR193 (Cairns). radar.service / radar-retry.service gain two more ExecStart= lines. Per-radar pages: nav strip at top with all four radars + a Synoptic button linking to pestrel.com; current page is highlighted. Layout switched to column flex (nav on top, image fills below) and the image now uses `width: 100%; max-width: 512px` so it fills phone viewports without upscaling beyond the BOM-native 512px on desktop. Synoptic page (index.html): "Radars" button fixed to the left edge at top 16.6%, linking to https://radar.pestrel.com/. Landing page (radar.pestrel.com/): rebalanced for four radars plus a dashed-border Synoptic button. nginx/radar.pestrel.com.conf: pulled in the certbot-managed TLS block so a fresh setup matches production state. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-03-15Centre image in viewport with black backgroundSt33v
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15Add deployment config and strengthen synopticChart.shSt33v
- Inline DeriveTime from func/deriveTimeString.sh; delete func/ - Add set -euo pipefail, quoting, and stderr for error messages - Archive PDFs to /var/lib/synoptic/archive/raw/ after conversion - Publish PNG to /srv/www/synopticLatest.png - Add systemd units: synoptic.{service,timer}, synoptic-retry.{service,timer} - Timer fires at 02:10, 08:10, 14:10, 20:10 UTC (2h after BOM publish slots) - Add nginx site config for pestrel.com - Add setup.sh (run once on VPS as root) and deploy.sh (run from cr4y) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>