Dockerized MeshCore Web App
July 10, 2026 · View on GitHub
The MeshCore Companion App - a web-based interface for connecting to and managing MeshCore Companion LoRa devices.
Version
Current version: v1.47.0 (build 74)
About
This is the web version of the MeshCore Companion App, built with Flutter. It allows you to connect to MeshCore devices via Bluetooth Low Energy (BLE) or USB Serial directly from your web browser, enabling you to send messages, manage contacts, and interact with the MeshCore mesh network.
To run it: pull the pre-built Docker image ghcr.io/axistem-dev/meshcore-web:latest
This repo mainly publishes that image, hosts the static web build, and documents maintainer workflows.
Features
- Connect to MeshCore Companion devices via BLE or USB Serial
- Send and receive messages on the mesh network
- Manage contacts, channels and remote repeaters
- View network topology and node information
- Real-time mesh network interaction
- Docker deployment for containerized hosting
Browser Requirements
Chrome/Edge (desktop or Android) via HTTPS or localhost access required for functionality.
MeshCore Companion App & Downloads
The MeshCore Companion App is the original application created by Liam Cottle.
App stores & hosted web:
- Android: Google Play Store
- iOS: App Store
- Web: MeshCore Web App (also this repo’s Docker image)
Desktop & web archives on files.liamcottle.net/MeshCore, per version:
- Web builds (this repository)
- macOS
- Windows
- Linux (x86_64
.zipand.AppImage)
Docker Deployment
Run the MeshCore web app in a container (nginx on Alpine). Use the published image:
ghcr.io/axistem-dev/meshcore-web:latest
Quick Start (recommended)
Pull and run the image directly (works on any machine with Docker):
docker run -d \
-p 8080:80 \
--restart unless-stopped \
--name meshcore-web \
ghcr.io/axistem-dev/meshcore-web:latest
To use another port, change -p (e.g. -p 3000:80 for http://localhost:3000).
Docker Compose (optional)
Clone this repo only if you want the included docker-compose.yml (same image, plus health check and restart policy):
git clone https://github.com/aXistem-dev/meshcore-web.git
cd meshcore-web
docker compose up -d
Building locally (optional)
Only if you need a custom image built from this repository’s files:
git clone https://github.com/aXistem-dev/meshcore-web.git
cd meshcore-web
docker build -t meshcore-web .
docker run -d -p 8080:80 --name meshcore-web meshcore-web
Updating from Source
For maintainers refreshing this repository from upstream web builds.
Automated Update Scripts
./update-from-source.sh— Downloads and updates files locally only (does not commit changes)./update-from-source-and-push.sh— Downloads, updates README.md, commits, and pushes to this repository
For manual updates, see the Manual Update Workflow section below.
Manual Update Workflow
When updating to a new version manually:
-
Download the new version from the MeshCore releases (e.g.,
MeshCore-v1.44.0+70-86c0436-web.zip) -
Extract and replace files in the repository:
- Extract the zip file
- Copy all files from the
web/directory to the repository root
-
Verify changes by checking unstaged files:
git status git diff -
Update README.md with the new version:
- Update the version number and build number in the "Current version" line
- Update the download link URL to match the new version
-
Stage and commit all changes:
git add -A git commit -m "Update to v1.XX.X (build XX)" -
Verify the commit includes all necessary files:
git log -1 --stat
License & Privacy
The MeshCore Companion App is closed source, built with Flutter, and is free for anyone to use.
Privacy Policy
Use of the app is subject to the Privacy Policy.
Official Resources
- Official Website: meshcore.io
Attribution
This repository contains the web build files of the MeshCore Companion App, maintained by aXistem. The original MeshCore Companion App is developed by Liam Cottle (Liam's GitHub page). See the Privacy Policy for data practices.