// the find
liamcottle/meshtastic-map
A map of all Meshtastic nodes heard via MQTT.
A web map that plots every Meshtastic node the public MQTT broker has heard, built from a Node.js collector that writes to MySQL through Prisma and an Express server that serves a Leaflet and Vue front end. It is for people running Meshtastic networks who want to see coverage, hardware mix, and traceroutes without building their own tooling.
The collector and the web server are separate processes, so the MQTT listener keeps running while the map restarts, and the README documents systemd units and a docker-compose stack that starts everything at once. It stores more than positions: neighbour info, traceroutes, telemetry and position history are all kept, and the neighbour layer shows which nodes actually hear each other. The README is candid about what does not work, including neighbour lines that are wrong on older firmware and proxied nodes that stay stuck online, which makes the docs more trustworthy than most hobby projects.
The Meshtastic protobuf schemas are not shipped, so the collector does not run until you fetch them yourself, which is the first hurdle for anyone who clones the repo expecting it to work. Packets are not deduplicated before they reach the database, and the TODO list admits it, so a busy broker will write a lot of rows unless you tune the purge settings. The database code is MySQL-specific in places, the front end has no build step, and the only tests cover two small utility modules. Map reports are stored but never used, and the MQTT connection-status section is marked as outdated.