Skip to content

GitHub Repositories

DEVELOPERS · LIBRARIES · TOOLS · COMMUNITY PROJECTS

Overview of MeshCore-related GitHub repositories for developers. From official libraries and CLI tools to community projects and GUI clients.

Official Repositories (meshcore-dev)

Repository Language Description
MeshCore C++ The core library: lightweight, portable C++ library for multi-hop packet routing on embedded LoRa devices. Includes sample applications such as Companion Radio, Repeater, Room Server, and Secure Chat.
meshcore_py Python Official Python bindings for MeshCore. Provides programmatic access to MeshCore nodes via BLE, serial, or TCP for building custom applications and automation.
meshcore-cli Python Command line interface for MeshCore nodes. Connects via BLE, TCP, or serial and offers an interactive shell for messages, contact management, remote node management, and scripting.
meshcore.js JavaScript Official JavaScript library for the companion protocol. Connects to a node over Web Bluetooth, Web Serial, a serial port or TCP and speaks the commands and responses of the companion firmware. Foundation for web-based MeshCore clients.
meshcore-ha Python Home Assistant integration for monitoring and controlling MeshCore radio networks. Brings mesh data to your home automation dashboard.

[!NOTE] The MeshCore firmware points at different repositories for the same libraries in two places. README.md r.70-71 names liamcottle/meshcore.js and fdlamotte/meshcore-cli; docs/companion_protocol.md r.16-17 names meshcore-dev/meshcore.js and meshcore-dev/meshcore_py. The projects moved to the organisation and the README did not follow. The table above follows the meshcore-dev variants. See Architecture of a client.

Desktop & Terminal Clients

Repository Language Description
meshcore-gui (PE1HVH) Python MeshCore LAN server with web-based GUI. Runs as a background service on a Raspberry Pi or desktop and offers bot functionality, observer mode for network monitoring, and a large message archive. Intended as an always-on server in your own LAN.
MeshTUI Python Terminal UI (TUI) for MeshCore nodes built with Textual. Two-panel layout with tabs for chat, settings, node management, and logs. Supports BLE, TCP, and serial with optional TCP proxy.

Mobile Clients

Repository Language Description
meshcore-open Flutter/Dart Open-source Flutter client for MeshCore. Fully featured mobile app with contacts, chat, channels, network map, settings, and repeater management. Supports background BLE and offline maps.

Firmware Variants & Bridges

Repository Language Description
dabeani/meshcore C++ MeshCore firmware fork with improved companion UI for embedded devices. Touch-first interface with tabs for contacts, channels, map, and management. Extra support for T-Deck Plus and SenseCap Indicator.
Akita-Zmodem-MeshCore Python File transfer over MeshCore networks using the Zmodem protocol. Designed for low bandwidth and high latency. Supports files and folders via asyncio.
pe1hvh/meshcore-bridge Python MeshCore bridge implementation by PE1HVH. Connects a MeshCore node via BLE or serial to other systems and services.

Web Tools & Maps

Repository Language Description
flasher.meshcore.dev JavaScript Source code for the official MeshCore Web Flasher. Enables firmware flashing directly from the browser via the WebSerial API.
map.meshcore.dev JavaScript Source code for the official MeshCore network map. Displays live positions of active nodes, repeaters, and room servers.

Translated from Dutch by Anthropic Claude