All apps · 0 apps
meshsimple
Docker app from pross' Repository
Overview
Readme
View on GitHubmeshsimple
Self-hosted Meshtastic monitoring app. Displays a live map of all mesh nodes, persistent channel 0 messaging (send and receive), and a node list — in a single Docker container.
![]()
Features
- Live node map (OpenStreetMap) with clustering and your own node highlighted
- Node list with last heard, battery, SNR, hops, hardware model, firmware version
- Channel 0 messaging — send and receive, fully persistent across restarts
- Unread message count in sidebar and browser tab title
- Light / dark / system theme
- Connects to your Meshtastic device over TCP/WiFi
Requirements
- A Meshtastic device accessible over TCP (most devices support this via WiFi)
- Docker
Unraid
Add a new container via the Docker tab:
| Field | Value |
|---|---|
| Repository | ghcr.io/pross/meshsimple:latest |
| Port | 8080 (host) → 8080 (container), TCP |
| Variable | MESHTASTIC_HOST = IP of your Meshtastic device |
| Variable | MESHTASTIC_PORT = 4403 (default) |
| Path | /mnt/user/appdata/meshsimple → /app/data |
Docker
docker run -d \
--name meshsimple \
-p 8080:8080 \
-e MESHTASTIC_HOST=192.168.1.x \
-e MESHTASTIC_PORT=4403 \
-v /path/to/data:/app/data \
ghcr.io/pross/meshsimple:latest
Or with Docker Compose:
cp .env.example .env
# Edit .env with your device IP
docker compose up -d
Navigate to http://<host-ip>:8080.
Development
Requires Python 3.11+ and Node 20+.
# Backend
cd backend && pip install -r requirements.txt
make dev-backend
# Frontend (in a separate terminal)
cd frontend && npm install
make dev-frontend
Frontend dev server runs on :5173 and proxies /api and /ws to the backend on :8000.
Licence
MIT
Categories
Related apps
Explore more like this
Explore allDetails
ghcr.io/pross/meshsimple:latestRuntime arguments
- Web UI
http://[IP]:[PORT:8080]/- Network
bridge- Shell
sh- Privileged
- false
Template configuration
Port to access the meshsimple web interface.
- Target
- 8080
- Default
- 8080
- Value
- 8080
IP address or hostname of your Meshtastic device (e.g. 192.168.1.79).
- Target
- MESHTASTIC_HOST
TCP port of your Meshtastic device. Default is 4403.
- Target
- MESHTASTIC_PORT
- Default
- 4403
- Value
- 4403
Persistent storage for the SQLite database.
- Target
- /app/data
- Default
- /mnt/user/appdata/meshsimple
- Value
- /mnt/user/appdata/meshsimple
Comma-separated list of emojis available for message reactions (e.g. 👍,👎,❤️,😂,😮). Defaults to 5 emojis if not set.
- Target
- REACTION_EMOJIS