Commit Graph
42 Commits
Author SHA1 Message Date
nmemmert 48ae797520 Merge pull request #2 from nmemmert/claude/pwa-alerts-radar-swipe-h9xik2 2026-08-16 21:25:03 -04:00
Claude 4d92739df4 Fix alert dedup across reloads, add radar fullscreen, fix swipe conflicts
- Persist alertIdsSeen to localStorage so already-seen alerts don't
  re-notify every time the PWA is opened; cap stored IDs at 200 entries
- Use serviceWorker.showNotification() for alert notifications so they
  work when the app is backgrounded, with fallback to new Notification()
- Add ⛶ fullscreen button to radar embed; uses Fullscreen API and
  resizes the MapLibre canvas after toggle
- Fix swipe-to-change-tab: block gesture when touch starts on a map,
  hourly scroll row, or radar timeline; also require the gesture to be
  more horizontal than vertical (dx > dy*1.5) to avoid conflict with
  vertical scrolling
2026-08-17 01:10:09 +00:00
Nate EmmertandClaude Sonnet 4.6 a25864d9ed Upgrade maps to MapLibre GL JS; compact header; move search to settings
- Replace Leaflet with MapLibre GL JS v4.7.1 across all map instances
- CARTO dark/light and Esri satellite raster basemaps (no API key)
- All overlays (hurricane, wildfire, SPC, wind arrows) ported to GeoJSON sources/layers
- AQI, alert, temp, sun/moon markers via maplibregl.Marker with custom HTML
- Radar animation pre-loads all frames on load for smoother playback
- Compact loc-header: tighter padding and font sizes, all info preserved
- Search bar moved from header to Settings tab under Location section
- Service worker bumped to weather-v7

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-08-14 11:04:32 -04:00
Nate Emmert 1863f6784b Fix XSS, validation, and CSS regressions; refactor proxy retry logic
- Sanitize geocode suggestion rendering to prevent XSS
- Add lat/lon validation and cache eviction to weather proxy endpoints
- Extract shared fetchWithRetry helper, dedupe retry/timeout logic
- Stop leaking upstream error details to clients
- Fix radar provider metadata and drop dead nowcast field
- Fix missing --surface-radius-sm var and duplicate/conflicting CSS rules
2026-06-15 08:51:18 -04:00
Nate Emmert 49b54e0fe4 Merge branch 'fix/network-main-parity' into main (resolve conflicts) 2026-03-17 14:21:49 -04:00
Nate Emmert 950e2708ab Enhance mobile UX: learn guide, alerts actions, and shareable weather cards 2026-03-17 14:21:32 -04:00
Nate Emmert 8f9a2d1c02 Unify map tab with feature toggles and shared radar overlay 2026-03-17 12:30:18 -04:00
Nate Emmert 98c45bb26f WIP: Begin unified map refactor - HTML structure, storage, CSS, state updates 2026-03-17 12:25:40 -04:00
Nate Emmert f4505b5650 Increase maps height to match radar and improve wind arrow visibility 2026-03-17 12:04:15 -04:00
Nate Emmert 6c7e2f7235 Increase RainViewer max zoom to 17 for better detail 2026-03-17 12:01:59 -04:00
Nate Emmert 14995987ae Stabilize SW and cache headers to match backup behavior 2026-03-17 11:36:12 -04:00
Nate 0d6d3985cc App title black text with white halo shadow 2026-03-16 15:29:09 -04:00
Nate 36605d8c90 Always-visible app title: white text + drop shadow on masthead h1/tagline 2026-03-16 15:24:46 -04:00
Nate ea20d31217 Fix persistent caching: no-store/no-cache headers, SW v4, versioned asset URLs 2026-03-16 15:19:54 -04:00
Nate 86914a7329 Rename app to NeCloud Weather and add iPhone/PWA PNG icons 2026-03-16 15:08:29 -04:00
Nate 37b751729e Add dynamic weather-based background themes with day/night variants 2026-03-16 15:05:38 -04:00
Nate 359e76bccb Add maps fullscreen and enforce single-line search controls 2026-03-16 15:03:27 -04:00
Nate 5003d3ec09 Fix stale UI cache with network-first app shell and forced SW updates 2026-03-16 14:57:59 -04:00
Nate defdfe2200 Refine mobile search bar to single-line compact controls 2026-03-16 14:49:18 -04:00
Nate 8ca6fa2fd0 Merge mobile-first redesign into main 2026-03-16 14:41:58 -04:00
Nate 1786bc8985 Fix persistent bottom nav by moving tabs outside sticky header 2026-03-16 14:38:36 -04:00
Nate cd45f0bf5e Keep bottom menu fixed during scroll across breakpoints 2026-03-16 14:34:17 -04:00
Nate 162969c2a2 Rebuild UI as true mobile-app layout with larger scale and emoji nav icons 2026-03-16 14:29:27 -04:00
Nate 78c7e8a9a9 Complete mobile-first UI overhaul with larger typography and touch-first layout 2026-03-16 14:22:41 -04:00
Nate 9bf83d44aa Add tab icons, fix mobile nav overflow, and soften card styling 2026-03-16 14:15:10 -04:00
Nate 11f2769d7f Tune mobile-first redesign for iPhone Safari and narrow Android screens 2026-03-16 14:09:48 -04:00
Nate 04ef97d675 Mobile-first UI redesign with bottom nav, sticky search, and card layout 2026-03-16 14:08:42 -04:00
Nate fedefb3616 Overhaul phone layout: stacked controls, 2-col stats, compact forecast rows 2026-03-16 14:03:06 -04:00
Nate 2d3f4f5960 Create writable /app/data in image for push subscription persistence 2026-03-16 13:30:02 -04:00
Nate 722e278f8e Improve mobile responsiveness for search, tabs, radar controls, and dense rows 2026-03-16 13:24:57 -04:00
Nate bb1a8db0f9 Persist push subscriptions to disk, add background NWS alert poller 2026-03-16 13:16:32 -04:00
Nate 52c96225b9 Add real lightning overlay, push notifications, map controls, hourly summary, favorites enhancements, API resilience, UI polish 2026-03-16 13:10:34 -04:00
Nate bd3e1e9605 Improve auto-detect place naming and add expandable 7-day forecast 2026-03-16 12:52:43 -04:00
Nate Emmert 30045c696e Add container publish workflow 2026-03-16 12:38:43 -04:00
Nate Emmert b242232e0c Fix geolocation and map rendering 2026-03-16 12:37:33 -04:00
nmemmert 0a58b12410 Merge pull request #1 from nmemmert/copilot/add-location-display-functionality 2026-03-16 12:04:50 -04:00
copilot-swe-agent[bot] 52a06f35d1 Initial plan 2026-03-16 16:03:07 +00:00
Nate e4c631f9a8 Add lightning strikes and wind overlay toggles to Maps tab 2026-03-16 11:56:03 -04:00
Nate 02f49e55f8 Add PWA support (manifest, service worker, icons, safe-area CSS) 2026-03-16 10:12:23 -04:00
Nate 0a2616c5d6 Change port to 3005 to avoid conflict 2026-03-16 10:03:47 -04:00
Nate ccaf2c0dd7 Use GHCR image in compose and document pull/run 2026-03-16 09:55:28 -04:00
Nate e397f11285 Initial commit 2026-03-16 09:40:48 -04:00