Official MeshCore Map (frontend), running at https://map.meshcore.io
This is fully static and build-free site, cloning it to web location that can serve static content should be enough. It uses backend api deployed on https://map.meshcore.io/api/v1/nodes and radio presets from https://api.meshcore.nz/api/v1/config
All code is native ES modules in src/, loaded directly by the browser:
main.js- entry point, creates the map and mounts the appapp.js- Vue app: state, filters, search, URL sync, deletion request dialogconfig.js- API endpoints, defaults and other constantsnodes.js- fetching and preparing nodes, filtering, search and statsmap.js- MapLibre map, base map styles, node icons, clustering and popupspopup.js- node popup contentcoverage.js- repeater coverage estimate: settings, link quality, runs the model in a workercoverage-model.js,coverage-worker.js- the coverage model (terrain, forests, LoRa link budget, diffraction) and its Web Workermvt.js- minimal vector tile reader (land cover for the coverage model)profile.js,profile-chart.js- point-to-point profile between two nodes or picked points, and its chartdeletion.js- node deletion request (selected nodes, email details and compose links)node-search-results.js- search autocomplete list, shared by the main search and the deletion dialogpresets.js,url-state.js,utils.js,node-utils.js- helpers
- Vue3
- Beer.css
- MapLibre GL JS
- msgpackr
- qr.js (ESM version by Horacio Gonzalez)
- Material icons