Skip to content

feat(pwa): add service worker, manifest, and offline banner (#103)#144

Open
Meme11030 wants to merge 1 commit into
wraith-protocol:developfrom
Meme11030:feat/pwa-service-worker-103
Open

feat(pwa): add service worker, manifest, and offline banner (#103)#144
Meme11030 wants to merge 1 commit into
wraith-protocol:developfrom
Meme11030:feat/pwa-service-worker-103

Conversation

@Meme11030

Copy link
Copy Markdown
  • Install vite-plugin-pwa@0.21.1 + workbox packages
  • Add public/manifest.webmanifest with full PWA metadata
  • Generate 10 icon sizes (72–512px) including maskable variants for Android adaptive icons and iOS home screen
  • Create src/sw/app-sw.ts: unified service worker that merges Workbox precaching/routing with existing Stellar notification background sync (replaces manual stellar-notification-sw.ts reg)
  • Configure injectManifest strategy:
    • NetworkFirst for Stellar RPC, Horizen RPC, Horizon REST
    • CacheFirst for Google Fonts (CSS + files)
    • Precache 198 app assets (4 MiB limit for large SDK chunks)
  • Add src/components/OfflineBanner.tsx: accessible offline state indicator using navigator.onLine + online/offline events
  • Wire OfflineBanner into App.tsx layout (between Header and TelemetryBanner)
  • Update index.html: manifest link → /manifest.webmanifest, dual theme-color meta (dark/light), iOS PWA meta tags
  • Remove manual SW registration from main.tsx (handled by injectRegister: auto via registerSW.js)
    closes PWA + service worker (offline-friendly) #103

…rotocol#103)

- Install vite-plugin-pwa@0.21.1 + workbox packages
- Add public/manifest.webmanifest with full PWA metadata
- Generate 10 icon sizes (72–512px) including maskable variants
  for Android adaptive icons and iOS home screen
- Create src/sw/app-sw.ts: unified service worker that merges
  Workbox precaching/routing with existing Stellar notification
  background sync (replaces manual stellar-notification-sw.ts reg)
- Configure injectManifest strategy:
  - NetworkFirst for Stellar RPC, Horizen RPC, Horizon REST
  - CacheFirst for Google Fonts (CSS + files)
  - Precache 198 app assets (4 MiB limit for large SDK chunks)
- Add src/components/OfflineBanner.tsx: accessible offline state
  indicator using navigator.onLine + online/offline events
- Wire OfflineBanner into App.tsx layout (between Header and
  TelemetryBanner)
- Update index.html: manifest link → /manifest.webmanifest,
  dual theme-color meta (dark/light), iOS PWA meta tags
- Remove manual SW registration from main.tsx (handled by
  injectRegister: auto via registerSW.js)
@vercel

vercel Bot commented Jul 26, 2026

Copy link
Copy Markdown

@Meme11030 is attempting to deploy a commit to the truthixify's projects Team on Vercel.

A member of the Team first needs to authorize it.

@drips-wave

drips-wave Bot commented Jul 26, 2026

Copy link
Copy Markdown

@Meme11030 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@truthixify

Copy link
Copy Markdown
Contributor

build failing on prettier drift in src/sw/app-sw.ts. Run pnpm format and push.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

PWA + service worker (offline-friendly)

2 participants