Skip to content

[Feature Request]: Enable Full Offline PWA Support (Cache-First) for Client.meshtastic.org #1000

@kernelplv

Description

@kernelplv

Prerequisites

  • I have searched existing issues to ensure this feature hasn't already been requested
  • I have checked the documentation to verify this feature doesn't already exist

Problem Statement

The current hosted web client (client.meshtastic.org) does not function reliably in offline environments or networks with heavy censorship (e.g., regions with RKN blocks). When internet access is unavailable or unstable, the PWA often fails to load the app shell, rendering the client unusable.

This issue is critical for users of specific hardware like the Heltec V4 (ESP32-S3). The current firmware builds for this target exclude the native embedded Web Server, likely due to flash space constraints. Consequently, users cannot access the device locally via IP (http://meshtastic.local) and are forced to rely solely on the external hosted web client.

Current Outcome: If a Heltec V4 user has no internet access, they are completely locked out of managing their device from a PC (via USB/Serial), as the browser client refuses to load without a network connection.

Proposed Solution

Update the Service Worker configuration for the hosted web client to utilize a "Cache First" strategy for all core static assets (HTML, JS, CSS, WASM).

  • Behavior: When a user visits client.meshtastic.org, the browser should check the local cache first. If the assets exist, the app should load immediately without attempting a network request (or failing gracefully if the network is unreachable).
  • Updates: Updates can be handled in the background (Stale-While-Revalidate) or upon the next successful connection, but the immediate priority must be loading the UI from the cache to ensure accessibility.

Current Alternatives

No response

Importance

  • Alignment with Project Goals: Meshtastic is an off-grid communication platform. Requiring an internet connection to launch the management interface contradicts the core philosophy of the project.
  • Hardware Accessibility: It provides a necessary fallback for hardware targets (like Heltec V4) that have stripped out the embedded web server functionality.
  • Resilience: It ensures that users in emergency situations or restrictive network environments can still configure and monitor their nodes using a desktop interface.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions