Two related dev-quality fixes that compose to remove a footgun.
1. Stale service worker self-cleanup (src/lib/dev-sw-cleanup.ts)
Even with VitePWA's devOptions.enabled now false (commit 613a925),
service workers registered during earlier dev sessions linger in
the browser and intercept navigations, often serving cached bundles
from the broken-config period. Manifested as: castle/chat/wallet
not redirecting to /login despite the new auth guard, forum/market
showing "Failed to Start: Cannot read properties of undefined" for
modules that aren't even in their standalone config, hub redirecting
to /market on refresh.
The new helper runs at app boot in dev only:
- enumerates navigator.serviceWorker.getRegistrations()
- unregisters every one of them
- clears caches.keys()
- reloads once (gated by sessionStorage to avoid loops)
In production builds it's a no-op — the legitimate SW registered
by virtual:pwa-register survives.
Wired into all 8 main.ts entry points (hub + 7 standalones).
2. Apple-mobile-web-app-capable deprecation (.html)
Browsers now warn that <meta name="apple-mobile-web-app-capable">
should be paired with the standardized <meta name="mobile-web-app-capable">.
Adding the standardized tag alongside (kept the apple variant for
older iOS Safari) on all 8 HTML entry points.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- Replace static app name in index.html and use environment variable for dynamic title
- Update Vite configuration to reflect new app name and description
- Modify manifest icons for better clarity and organization
- Remove deprecated logo asset from the project
This commit enhances the app's configurability and aligns with the new branding strategy.
- Change project title from "Atitlán Directory" to "Ariège Hub" in index.html
- Update app title in meta tags for PWA support
- Add @tanstack/vue-table dependency for enhanced table management
- Refactor ConnectionStatus component to improve status variant logic
- Enhance useEvents composable for better error handling and sorting
- Add 'events' translation to Spanish and French locales
- Create a new Pinia store for Nostr state management