Recognise own messages by id (prefix and case insensitive) or by node number, so chat bubbles align right with the accent colour even when the message only carries fromNodeNum. Fetch /api/v1/status and /api/status in parallel and merge them, since MeshMonitor 4 dropped localNode from the legacy endpoint. Add a "How to create a token" link, plus Source code and Report a bug links to the Settings screen. Default the server port to 8080 (MeshMonitor's Docker default). Add PRIVACY.md, refresh the README and ignore CLAUDE.md.
2.6 KiB
Privacy Policy
Last updated: 2026-05-07
MeshMonitor Chat for iOS ("the app") is a client for MeshMonitor, a self-hosted bridge to the Meshtastic mesh radio network. The app is open source.
This document describes, in plain language, what the app does with data.
Short version
The app does not collect, store, or transmit any personal data to servers operated by the developer. There are no accounts, no analytics, no advertising, no tracking, and no third-party SDKs. The app talks only to the MeshMonitor server you choose.
What stays on your device
The following information is stored locally on your device. It never leaves the device, except when used to authenticate against your MeshMonitor server:
- The host, port and HTTPS flag of your MeshMonitor server (iOS preferences).
- The Bearer token used to authenticate against your server (iOS Keychain, accessible only after first unlock).
- Per-conversation "last read" timestamps used to count unread messages (iOS preferences).
You can wipe all of this at any time by deleting the app from your device.
Where your messages go
The app exchanges chat messages exclusively with the MeshMonitor server you configured in Settings. The developer does not operate any MeshMonitor server. You choose the server (typically a self-hosted instance on your local network or your own domain). What that server stores, retains, or relays onto the Meshtastic radio mesh is governed by your own configuration and the server's own policies, not this one.
Meshtastic radio messages are broadcast over LoRa to every device in range and may be relayed by intermediary nodes. Direct messages are end-to-end encrypted between Meshtastic nodes that have exchanged keys (PKC); broadcast channel messages use a shared channel key. Treat anything you send as readable by anyone who shares the channel key or controls a node in the path.
Third parties
The app does not embed any analytics, advertising, crash reporting, or tracking SDKs. No data is shared with third parties for marketing or profiling purposes.
External servers the app connects to are limited to:
- The MeshMonitor server you configured (HTTP or HTTPS, your choice).
No other network connections are made.
Children
The app is not directed at children under 13 and does not knowingly collect any data from them. There is no data collection at all.
Changes
If this policy changes, the new version will replace this document and the "Last updated" date above will be revised.
Contact
Questions about this policy: hi@andros.dev.