Skip to content

PapaSierra555/MeshCommunityPlanner

Mesh Community Planner

A desktop application for planning LoRa mesh network deployments with terrain-aware RF propagation, hardware selection, and bill of materials generation.

Version License Platforms


What It Does

Mesh Community Planner helps you design LoRa mesh networks before buying hardware. Place nodes on a map, simulate RF coverage using real terrain data, pick from a catalog of real devices, and generate a shopping list. Everything runs locally on your computer — no accounts, no cloud, no telemetry.


Downloads

Download the latest release from the GitHub Releases page.

Platform Format File
Windows Portable (.zip) MeshCommunityPlanner-1.2.0-win.zip
macOS Disk image (.dmg) MeshCommunityPlanner-1.2.0.dmg
Linux AppImage MeshCommunityPlanner-1.2.0-x86_64.AppImage

All downloads are self-contained — no Python or Node.js installation required.


Features

  • Interactive Map — Place nodes on OpenStreetMap with drag-and-drop
  • Node Configuration Wizard — Guided setup: Region, Firmware, Device, Radio, Antenna, Power
  • Hardware Catalog — 11+ real LoRa devices across Meshtastic, MeshCore, and Reticulum/RNode
  • Terrain-Aware Propagation — Longley-Rice/ITWOM with SRTM 30m elevation data
  • Elevation Heatmap — On-demand terrain visualization with hypsometric tinting, adjustable opacity, and min/max range sliders
  • Line-of-Sight Analysis — Terrain profiles with Fresnel zone clearance visualization
  • Network Topology — Graph view with critical node detection and resilience metrics
  • Power Budgeting — Battery and solar deployment recommendations per node
  • Bill of Materials — Component list with pricing, CSV/PDF export, and deployment cards
  • Regulatory Presets — US FCC 915, EU 868, EU 433, ANZ
  • Import/Export — .meshplan JSON format, CSV node import, KML export
  • Offline Operation — Works without internet after initial map/terrain caching
  • Privacy-First — All data stays on your machine, no accounts or analytics
  • Accessibility — WCAG 2.2 AA compliant with full keyboard navigation
  • Sample Plans — 4 built-in example plans to explore on first launch

Supported Firmware

  • Meshtastic — Community mesh networking firmware
  • MeshCore — Custom mesh protocol
  • Reticulum / RNode — Cryptographic mesh networking

Build from Source

Prerequisites

  • Python 3.9+ with pip
  • Node.js 18+ with npm
  • PyInstaller 6.x (pip install pyinstaller)

Build

git clone https://github.com/PapaSierra555/MeshCommunityPlanner.git
cd MeshCommunityPlanner

pip install -r requirements.txt
pip install pyinstaller

cd frontend && npm install && npx vite build && cd ..

python -m PyInstaller installers/mesh_planner.spec --noconfirm

Run

# Windows
dist\MeshCommunityPlanner\MeshCommunityPlanner.exe

# macOS / Linux
./dist/MeshCommunityPlanner/MeshCommunityPlanner

The app starts a local server and opens your browser to http://127.0.0.1:8321.

See docs/INSTALLATION_GUIDE.md for platform-specific details, DMG/AppImage packaging, and troubleshooting.


Tech Stack

Component Technology
Frontend React 18 + TypeScript + Vite
State Management Zustand
Mapping Leaflet + OpenStreetMap
Visualization D3.js
Backend Python 3.9+ + FastAPI
Database SQLite (local)
Propagation Longley-Rice / ITWOM
Terrain Data SRTM 1-arc-second (30m resolution)
Packaging PyInstaller

Documentation

All documentation lives in the docs/ folder. Start with the User Guide for a comprehensive walkthrough of every feature.


Contributing

Contributions are welcome! See CONTRIBUTING.md for guidelines on reporting bugs, requesting features, and submitting pull requests.

Please read our Code of Conduct before participating.


License

Licensed under Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0).

  • Share — Copy and redistribute in any medium or format
  • Adapt — Remix, transform, and build upon the material
  • Attribution — Give appropriate credit
  • NonCommercial — Not for commercial use
  • ShareAlike — Distribute under the same license

See LICENSE for full terms.


Acknowledgments

  • Signal-Server by Alex Farrant — Open-source RF propagation engine
  • OpenStreetMap contributors — Map data
  • USGS — SRTM terrain elevation data
  • Meshtastic, MeshCore, Reticulum projects — Inspiring this planning tool

About

Desktop application for planning LoRa mesh network deployments with terrain-aware RF propagation, hardware selection, and bill of materials generation.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors