// the find
vicliu624/trail-mate
Trail Mate is an offline‑first handheld system for GPS navigation, LoRa communication, and real‑time team situational awareness in no‑network environments.
Trail Mate is multi-protocol offline firmware (Meshtastic/MeshCore/Reticulum) for GPS+LoRa handhelds — ESP32, nRF52, and Linux — aimed at hikers and backcountry teams who want off-grid messaging, maps, and team tracking without a phone or cloud account. It's for people already in or willing to get into the LoRa/mesh hardware hobby, not a drop-in library.
Real CI matrix across ~10 hardware targets spanning PlatformIO/Arduino and ESP-IDF, with native regression tests rather than a single happy-path board. Protocol parsing gets actual security attention — dedicated tests for control-frame auth, corrupt/malformed frame rejection, and duplicate shard rejection, which matters when you're parsing untrusted radio packets. Three interoperable mesh backends (Meshtastic public mesh, MeshCore, Reticulum/LXMF) share one UI/business layer instead of forking the app per protocol. Feature set is genuinely broad for the niche: offline vector tile maps, GNSS sky plot, SSTV decode, Codec2 walkie-talkie, USB HostLink for PC tooling.
The README buries the actual engineering behind pages of philosophical marketing copy about decentralization and 'authority over digital life' before you reach a device table or build command. The repo commits a `.distinction/` directory full of AI-agent working state — chat session logs, use-case-diagram JSON, run manifests — which is generated tooling cruft, not source, and bloats every clone. Device support is uneven despite the single table: T-Deck Pro, T-Watch S3, Tab5, and the P4 variants are explicitly bring-up/experimental, and the nRF52 targets ship a reduced feature set, so 'supported' doesn't mean 'complete'. It's AGPL-3.0 with a commercial license sold privately on request — workable for a hobbyist, a real blocker if you want to ship a product, and the terms aren't in the repo. Also a hardware-bound project with no clone-and-run path — you need actual LoRa/GPS boards to get anything out of it.