Plugin Ecosystem

Extend MeshDash.
Build the Tools
Your Mesh Needs.

Every plugin gets a fully isolated environment — FastAPI router, static file server, sidebar nav entry, in-memory log stream, and lifecycle management — without touching a single line of core code. Ship a plugin in an afternoon. Reach every MeshDash deployment through the verified store.

Browse Plugin Store Developer Docs
33
Plugins in Store

Available to install from your dashboard

100%
Verified & Reviewed

Every plugin reviewed before store publication

< 5 min
Install Time

One click in the Plugin Manager

Zero
Core Changes

Plugins never modify core MeshDash files

Isolated FastAPI router — your routes, your namespace
Static file server — ship HTML/CSS/JS with your plugin
In-memory log viewer — visible in the Plugin Manager UI
JWT auth inherited — no auth boilerplate ever
Watchdog-monitored background tasks — auto-restart on crash
Full core context — db, nodes, radio TX, config
Sidebar nav entry — your plugin appears in the dashboard menu
Zero-downtime stop/start — .disabled flag, no process kill
Verified Plugin Store

Available Right Now

These are the real, live plugins currently in the MeshDash plugin store — scanned directly from the plugin repository. Install any of them from the Plugin Manager in your dashboard with one click.

Apprise Notifications OFFICIAL v1.0.2
apprise_notify · by MeshDash

Send mesh events to 130+ services — Discord, Telegram, Slack, Email, SMS, Teams, Pushover, Gotify and more — via the Apprise library. Wizard-based rule builder with per-rule Do Not Disturb schedules, node whitelists, channel filters, keyword matching, and per-hour rate limits. MeshDash v3.0+ required for full functionality.

NOTIFICATIONS WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Apprise Notify /plugin/apprise_notify/index.html
Auto-Reply OFFICIAL v2.0.2
auto_reply · by MeshDash

Hierarchical auto-reply with slot/channel/DM filtering, smart reply routing, and per-rule scope overrides. MeshDash v3.0+ required for full functionality.

AUTOMATION WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Auto-Reply /plugin/auto_reply/index.html
Auto-Responder OFFICIAL v1.0.3
auto_responder · by MeshDash

Automatically replies to incoming Direct Messages. Includes an anti-spam cooldown to prevent infinite reply loops. MeshDash v3.0+ required for full functionality.

AUTOMATION WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Auto-Responder /plugin/auto_responder/index.html
Channel Vault ★ FEATURED OFFICIAL v1.0.3
channel_vault · by MeshDash

Server-side PSK vault for unlimited channel configurations beyond the radio's 8 slots. Decrypts RF packets the radio couldn't decode, retroactively processes history, detects unknown encrypted channels, backs up and restores radio channel configs, and provides a guided one-click hotswap to write any vaulted channel directly to the radio with slot selection and automatic reboot. MeshDash v3.0+ required for full functionality.

SECURITY WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Channel Vault /plugin/channel_vault/index.html
Cold Nodes OFFICIAL v2.0.3
cold_nodes · by MeshDash

Detects nodes not heard within a configurable period. Stamps stale badges on Overview cards, adds a Cold Node tab to the node detail modal, and provides a management page for bulk deletion. MeshDash v3.0+ required for full functionality.

MONITORING WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Cold Nodes /plugin/cold_nodes/index.html
Emoji Picker OFFICIAL v1.0.0
emoji_picker · by MeshDash

Adds an emoji picker button to all message input fields (broadcast, DM, tasks, bulletins). Tap to insert emojis into your messages. MeshDash v3.0+ required for full functionality.

UI OFFICIAL SIDEBAR UI
SIDEBAR ENTRIES
Emoji Picker /plugin/emoji_picker/index.html
Geo Fence ★ FEATURED OFFICIAL v1.0.2
geo_fence · by MeshDash

Advanced geofencing with unlimited zones (circle, polygon, corridor, node-relative). Triggers on enter, exit, dwell, absence, node-to-node proximity, speed threshold, and heading change. Actions include SSE alerts, mesh DMs, channel broadcasts, and webhooks. Full interactive Leaflet map with live node positions and event log. MeshDash v3.0+ required for full functionality.

LOCATION WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Geo Fence /plugin/geo_fence/index.html
Google Translate OFFICIAL v1.0.3
google_translate · by MeshDash

Site-wide Google Translate integration. Injects the translate widget into the MeshDash UI so all content — node names, messages, menus — can be translated into any language. MeshDash v3.0+ required for full functionality.

INTEGRATION WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Translate /plugin/google_translate/index.html
Hello Mesh OFFICIAL v2.0.3
hello_mesh · by MeshDash

Interactive API explorer & plugin tutorial. Learn how to build MeshDash plugins by running live examples. MeshDash v3.0+ required for full functionality.

TUTORIAL WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Hello Mesh /plugin/hello_mesh/index.html
ISS Tracker OFFICIAL v1.0.2
iss · by MeshDash

Real-time International Space Station tracker. Plot the ISS on a map, view crew details, and set up automatic mesh alerts when the station flies within your defined radius. MeshDash v3.0+ required for full functionality.

TELEMETRY WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
ISS Tracker /plugin/iss/index.html
Medi AI OFFICIAL v1.0.3
medi · by MeshDash

Provides medical advice via local offline models or external hosted LLMs (OpenAI, Gemini, Nvidia) over direct message or channel communication. Includes session management, a live query queue, and reliable message delivery using automated chunking, ACK tracking, and retry mechanisms. MeshDash v3.0+ required for full functionality.

AI WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Medi AI /plugin/medi/index.html
Mesh Analytics ★ FEATURED OFFICIAL v2.0.2
mesh_analytics · by MeshDash

Comprehensive mesh analytics with node scoring, RF analysis, topology mapping, health monitoring, environmental sensors, and exportable reports. MeshDash v3.0+ required for full functionality.

ANALYTICS WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Mesh Analytics /plugin/mesh_analytics/index.html
Mesh BB ★ FEATURED OFFICIAL v1.0.3
mesh_bb · by MeshDash

A fully-featured mesh-native bulletin board system. Field operators post, read, and subscribe to named boards using simple DM commands — no internet, no apps, no infrastructure required. Features correct DM vs channel routing with per-channel permissions, paginated responses sized for Meshtastic's 220-byte payload limit with ACK-tracked chunked delivery, per-node block lists, full conversation trace for every exchange, auto-announce scheduling (daily, weekly, interval), popularity tracking, and a public read-only share URL. Designed for EMCOMM, SAR, and off-grid coordination. MeshDash v3.0+ required for full functionality.

COMMUNICATION WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Mesh BB /plugin/mesh_bb/index.html
Mesh Chat AI OFFICIAL v1.0.4
mesh_chat · by MeshDash

An engaging AI chatbot featuring dynamically selectable personality modes. Powered by configurable local models or external hosted LLMs (OpenAI, Gemini, Nvidia), it ensures reliable communication over the mesh via automated message chunking, ACK tracking, robust session management, and a live query queue. MeshDash v3.0+ required for full functionality.

AI WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Mesh Chat AI /plugin/mesh_chat/index.html
Mesh Ping OFFICIAL v1.0.2
mesh_ping · by MeshDash

Active round-trip ping sessions with RTT measurement. Launch from the UI or trigger via DM command (ping 5). Tracks ACK rate, min/avg/max RTT, and sends a summary DM back to the requester. Live session dashboard with per-ping dot timeline and sparkline charts. MeshDash v3.0+ required for full functionality.

NETWORK WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Mesh Ping /plugin/mesh_ping/index.html
Mesh Traceroute OFFICIAL v1.0.2
mesh_traceroute · by MeshDash

Stub plugin — placeholder for future implementation. No functionality yet. MeshDash v3.0+ required for full functionality.

NETWORK OFFICIAL SIDEBAR UI
SIDEBAR ENTRIES
Traceroute /plugin/mesh_traceroute/index.html
Mesh Visualizer OFFICIAL v1.1.2
mesh_visualizer · by MeshDash

3D mesh network visualizer — renders nodes and links in an interactive 3D view.

VISUALIZATION OFFICIAL SIDEBAR UI
SIDEBAR ENTRIES
Visualizer /plugin/mesh_visualizer/index.html
Network Intelligence ★ FEATURED OFFICIAL v1.0.2
net_intel · by MeshDash

Computes per-node Link Quality Scores (LQS), Smart Hops, and network Entropy. Features a fleet overview dashboard with a 0-100 health score, traffic trends, and hardware stats, plus neighbor graphs and traceroute analysis for mesh diagnostics. MeshDash v3.0+ required for full functionality.

INTELLIGENCE WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Net Intel /plugin/net_intel/index.html
Node Admin ★ FEATURED OFFICIAL v1.3.2
node_admin · by MeshDash

Complete remote node management. Configure identity, device role, LoRa radio, position settings, and MQTT on any node in the mesh. Includes guided setup for remote admin key configuration, reboot, factory reset, and node database purge. MeshDash v3.0+ required for full functionality.

MANAGEMENT WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Node Admin /plugin/node_admin/index.html
Node Analytics OFFICIAL v1.0.2
node_analytics · by MeshDash

Comprehensive per-node telemetry analysis with charts for power, RF signal, network, environment, GPS, and system health. Time-range filtering, live stats, and automated insights. MeshDash v3.0+ required for full functionality.

ANALYTICS WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Node Analytics /plugin/node_analytics/index.html
Node Comparison OFFICIAL v1.0.2
node_comparison · by MeshDash

Stub plugin — placeholder for future implementation. No functionality yet. MeshDash v3.0+ required for full functionality.

ANALYTICS OFFICIAL SIDEBAR UI
SIDEBAR ENTRIES
Node Comparison /plugin/node_comparison/index.html
Node Ignore OFFICIAL v1.0.2
node_ignore · by MeshDash

Persistent per-node ignore list with no node limit. Ignored nodes are hidden from the node grid, map, and all UI views. The node still participates on the mesh — this is a server-side UI filter that survives restarts. Reversible at any time. Supports notes, bulk management, and right-click ignore from any node card. MeshDash v3.0+ required for full functionality.

MANAGEMENT WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Node Ignore /plugin/node_ignore/index.html
Node Monitor OFFICIAL v1.0.2
node_monitor · by MeshDash

Telemetry-based alerting system. Set thresholds on battery, voltage, SNR, temperature and more. Alerts are sent directly over the mesh to specified nodes or broadcast channels. MeshDash v3.0+ required for full functionality.

MONITORING WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Node Monitor /plugin/node_monitor/index.html
PKI Alerts ★ FEATURED OFFICIAL v1.0.4
pki_alerts · by MeshDash

Trust On First Use (TOFU) security with RF Anomaly Profiling. Detects Node ID/MAC spoofing by pinning identities to cryptographic public keys. Flags key mismatches, physical cloning attempts via SNR/RSSI/hardware divergence, and duplicate key groups shared across multiple nodes — indicating device cloning or firmware key reuse. MeshDash v3.0+ required for full functionality.

SECURITY WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
PKI Alerts SOC /plugin/pki_alerts/index.html
Polar Grid OFFICIAL v1.0.3
polar_grid · by MeshDash

Azimuth lines and range rings centred on your node. Draggable centre, interactive distance bands, configurable units and ring layout. Ideal for antenna analysis and directional RF work. MeshDash v3.0+ required for full functionality.

MAPPING WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Polar Grid /plugin/polar_grid/index.html
Proximity Pruner OFFICIAL v1.0.2
proximity_prune · by MeshDash

Automatically purge nodes beyond a set radius from your database. Configurable per-radio with an interactive live map preview. MeshDash v3.0+ required for full functionality.

MANAGEMENT WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Proximity Pruner /plugin/proximity_prune/index.html
Push Notifications ★ FEATURED OFFICIAL v2.1.3
push_notifications · by MeshDash

Real-time Web Push alerts via SSE bridge. DMs, channel messages, keyword watchlists, position reports, telemetry alerts, node events, SOS detection, quiet hours and a live packet log. MeshDash v3.0+ required for full functionality.

NOTIFICATIONS WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Push Notifications /plugin/push_notifications/index.html?v=2.1.1
Share Map ★ FEATURED OFFICIAL v1.0.2
share_map · by MeshDash

Create public embeddable widgets — live maps, node stat cards, network stats, activity feeds — and share them anywhere with no login required. Each widget gets a unique URL and iframe code. 100% read-only. MeshDash v3.0+ required for full functionality.

SHARING WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Share Map /plugin/share_map/index.html
TCP Proxy ★ FEATURED OFFICIAL v1.0.2
tcp_proxy · by MeshDash

Exposes a virtual Meshtastic TCP server, allowing the official mobile apps, Python CLI, or any compatible client to connect to MeshDash as if it were a physical radio. Supports persistent sessions, offline message queuing, and real-time bidirectional traffic proxying. MeshDash v3.0+ required for full functionality.

NETWORK WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
TCP Proxy /plugin/tcp_proxy/index.html
Theme Editor OFFICIAL v1.0.3
theme_editor · by MeshDash

Live CSS variable theming for the MeshDash UI. Pick accent colours, backgrounds and borders with instant preview. Includes preset themes and a reset to default. MeshDash v3.0+ required for full functionality.

UI WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Theme Editor /plugin/theme_editor/index.html
Weather Plugin OFFICIAL v1.0.4
weather · by MeshDash

Fetch current weather from Open‑Meteo and broadcast to the mesh

AUTOMATION WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Weather /plugin/weather/index.html
Web Telemetry OFFICIAL v1.0.2
web_telemetry · by MeshDash

Extract data from websites and broadcast over mesh network. Supports one-time transmissions and scheduled cron tasks.

TELEMETRY WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Web Telemetry /plugin/web_telemetry/index.html
Welcome New Nodes OFFICIAL v1.1.0
welcome_new · by MeshDash

Automatically DMs newly discovered mesh nodes with a welcome message. Configurable message, cooldown, and delivery options. MeshDash v3.0+ required for full functionality.

AUTOMATION WATCHDOG OFFICIAL WATCHDOG SIDEBAR UI
SIDEBAR ENTRIES
Welcome /plugin/welcome_new/index.html
Installing Plugins from Your Dashboard

All plugins in the store are available directly from the Plugin Manager inside your running MeshDash instance. Open the Plugins view, click INSTALL PLUGIN, choose the URL tab, and paste the plugin's .zip URL. The server fetches, extracts, and registers the plugin automatically. Then click APPLY & RESTART.

meshdash.local:8000 → Plugins → INSTALL PLUGIN → FROM URL → paste .zip URL → APPLY & RESTART
Dashboard View

The Plugin Manager — What It Looks Like

meshdash.local:8000 / Plugins
LIVE
33
INSTALLED
33
RUNNING
1
STOPPED
0
CRASHED
Apprise Notifications OFFICIAL
apprise_notify · v1.0.2 · MeshDash
RUNNING
Send mesh events to 130+ services — Discord, Telegram, Slack, Email, SMS, Teams, Pushover, Gotify an…
Auto-Reply OFFICIAL
auto_reply · v2.0.2 · MeshDash
RUNNING
Hierarchical auto-reply with slot/channel/DM filtering, smart reply routing, and per-rule scope over…
Auto-Responder OFFICIAL
auto_responder · v1.0.3 · MeshDash
RUNNING
Automatically replies to incoming Direct Messages. Includes an anti-spam cooldown to prevent infinit…
Channel Vault OFFICIAL
channel_vault · v1.0.3 · MeshDash
RUNNING
Server-side PSK vault for unlimited channel configurations beyond the radio's 8 slots. Decrypts RF p…
Developer Documentation

Build Your First Plugin This Afternoon

The complete developer guide lives in the MeshDash documentation. Everything below is a practical overview. Start from Hello Mesh — it's already running on your instance.

1. Directory Structure

plugins/
└── my_plugin/
    ├── manifest.json    ← required
    ├── main.py          ← entry point
    ├── requirements.txt ← pip deps
    ├── static/          ← served at /static/plugins/my_plugin/
    │   └── index.html
    └── README.md        ← required for store submission

2. manifest.json

{
  "id":            "my_plugin",
  "name":          "My Plugin",
  "version":       "1.0.0",
  "author":        "Your Name",
  "description":   "What this plugin does.",
  "entry_point":   "main.py",
  "router_prefix": "/api/plugins/my_plugin",
  "static_prefix": "/static/plugins/my_plugin",
  "watchdog":      false,
  "nav_menu": [{
    "label": "My Plugin",
    "icon":  "fa-puzzle-piece",
    "href":  "/plugin/my_plugin/index.html"
  }]
}

3. Python Entry Point

from fastapi import APIRouter
plugin_router = APIRouter()
_ctx = {}

def init_plugin(context: dict):
    global _ctx
    _ctx = context
    _ctx['logger'].info("my_plugin loaded")

@plugin_router.get("/hello")
async def hello():
    node = _ctx['meshtastic_data'].local_node_id
    return {"node": node, "status": "ok"}

@plugin_router.post("/announce")
async def announce(text: str):
    conn = _ctx['connection_manager']
    await conn.sendText(text, destinationId="^all",
                        channelIndex=0)
    return {"sent": True}

4. init_plugin Context Keys

db_manager DatabaseManager — SQLite access
meshtastic_data Nodes, packets, stats, local node ID
connection_manager sendText() — transmit to mesh
node_registry Dict of all active NodeSlot objects
event_loop Main asyncio loop for threadsafe scheduling
logger Python logger pre-scoped to plugin.{id}
plugin_watchdog Dict — write [pid]=time.time() for heartbeat
plugin_id This plugin's own id string

Background Task with Watchdog — Full Example

import time, threading
from fastapi import APIRouter

plugin_router = APIRouter()
_running = False

@plugin_router.get("/status")
async def status():
    return {"running": _running}

def _loop(ctx):
    global _running
    pid      = ctx["plugin_id"]
    logger   = ctx["logger"]
    watchdog = ctx["plugin_watchdog"]
    conn     = ctx["connection_manager"]
    _running = True
    logger.info("Background task started")

    while _running:
        try:
            # ── Do your work here ──────────────
            logger.debug("poll cycle")

            # MUST heartbeat if watchdog=true
            watchdog[pid] = time.time()
        except Exception as e:
            logger.error(f"Poll error: {e}")
        time.sleep(30)

def init_plugin(context: dict):
    t = threading.Thread(
        target=_loop, args=(context,), daemon=True)
    t.start()
    context["logger"].info("Plugin init complete")
Watchdog Behaviour

Set "watchdog": true in manifest.json. Your background task must write watchdog[pid] = time.time() at least once per minute. If the heartbeat stops, MeshDash marks the plugin as hung, routes return 503, and the APPLY & RESTART button appears.

Route Security

All plugin routes automatically get a state-check dependency injected by the PluginManager. If the plugin status is not running or the watchdog has fired, the dependency raises 503 Service Unavailable. You never need to implement this yourself.

Disabling a Plugin
touch /opt/meshdash/plugins/my_plugin/.disabled

This is what the STOP button does internally. The plugin stops loading at startup without being deleted. Remove the file (or click START) to re-enable.

Get Into the Store

Submit Your Plugin — Own Your Distribution

Your MeshDash account — created during the Setup Wizard — is your developer account. No separate registration, no fee, no gatekeeping on development. Only store publication is reviewed.

1
Create Account via Setup Wizard

Visit meshdash.co.uk/c2_setup.php to set up MeshDash. The account you create is automatically a developer account.

2
Build with Hello Mesh as Your Template

Clone Hello Mesh from your running instance's Plugin Manager. It's already fully documented with live endpoints you can test.

3
Submit via Developer Portal

Log in at meshdash.co.uk/plugin-development.php. Upload your plugin .zip, fill in the submission form, and link a test instance.

4
Verification Review

Code review, manifest validation, functional testing, and documentation check. Two-way feedback via the developer portal. Most reviews complete within 5 business days.

5
Live in the Store

Your plugin appears in every MeshDash Plugin Manager worldwide. You keep full ownership and can push revisions through the portal at any time.

What You Get as a Developer

Repository Management

Push revisions at any stage — pre-review, during review, or after going live. Security-affecting changes trigger a targeted re-review only.

Install Analytics

See how many instances have your plugin installed, which versions are active, and aggregate error rates from watchdog reports.

Review Feedback Thread

Two-way conversation with the MeshDash review team — request clarification, respond to notes, track approval status.

Version Control

Maintain stable, beta, and deprecated releases. Instances on older versions are notified of updates in their Plugin Manager.

Permanent Attribution

Your name on every plugin card in every Plugin Manager worldwide. Attribution is tied to your account, not just the release.

Security Disclosure Channel

Private channel to coordinate responsible disclosure updates directly with the MeshDash security team.

Why There's a Review Process

MeshDash plugins run inside the server process with access to the database, connected radios, and the network. That's significant trust. The review exists to keep users safe — not to slow down development.

Security Review

No injection risks, no unsafe subprocess, no credential exfiltration, no calls outside the plugin API.

Manifest Validation

Required fields, valid semver, safe nav labels, no conflicting route prefixes with core or other plugins.

Functional Test

Installed on a clean instance. Start/stop/restart lifecycle exercised. Routes tested. Watchdog verified.

Docs Check

README must explain functionality, config options, external dependencies, and known limitations.

Ready to build?

Start from Hello Mesh — running on your instance right now. Read the developer docs. Set up via the Setup Wizard to get your developer account. The first working plugin usually takes under an afternoon.

Full Developer Docs Setup Wizard — Get Account Developer Portal

Setup wizard account = developer account. No fee. No separate registration.
Development is unrestricted — only store publication goes through review.