Reticulum Community Hub (RCH) is a shared coordination point for mesh networks. It allows people and groups to exchange messages, share situational updates, and distribute files in a structured and reliable way, even across intermittent or low-connectivity environments, while remaining independent from centralized internet services.
- One-to-many and topic-scoped message fan-out over LXMF.
- Telemetry collection and on-demand telemetry responses.
- File and image attachment storage with retrieval by ID.
- Northbound REST + WebSocket API for operators and the admin UI.
- Optional TAK/CoT bridge for chat and location updates.
- Clone and enter the repo.
git clone https://github.com/FreeTAKTeam/Reticulum-Community-Hub.git cd Reticulum-Community-Hub - Create and activate a virtual environment.
python -m venv .venv # Linux/macOS source .venv/bin/activate # Windows (PowerShell) .venv\Scripts\Activate.ps1
- Install dependencies.
python -m pip install --upgrade pip python -m pip install -e . - Prepare a storage directory and config.
- Copy
RCH_Store/config.iniinto your storage directory. - Adjust paths in the
[hub],[files], and[images]sections.
- Copy
- Start the hub.
python -m reticulum_telemetry_hub.reticulum_server \ --storage_dir ./RCH_Store \ --display_name "RCH"
For configuration, services, and client usage details, see docs/userManual.md.
- Create and activate a virtual environment.
python -m venv .venv # Linux/macOS source .venv/bin/activate # Windows (PowerShell) .venv\Scripts\Activate.ps1
- Install the package.
python -m pip install --upgrade pip python -m pip install ReticulumCommunityHub
- Start the hub (point at your storage directory).
python -m reticulum_telemetry_hub.reticulum_server --storage_dir /path/to/RCH_Store
The northbound FastAPI service exposes REST + WebSocket endpoints used by the admin UI.
-
Run the hub + API together (recommended for chat/message sending):
python -m reticulum_telemetry_hub.northbound.gateway \ --storage_dir ./RCH_Store \ --api-host 0.0.0.0 \ --api-port 8000 -
Run only the API server (read-only unless you provide a message dispatcher):
uvicorn reticulum_telemetry_hub.northbound.app:app --host 0.0.0.0 --port 8000
-
Protect admin endpoints by setting
RCH_API_KEY(acceptsX-API-Keyor Bearer token). -
The UI lives in
ui/:cd ui npm install npm run devSet
VITE_RCH_BASE_URLwhen the UI should target a different hub.
docs/README.md(documentation map)docs/userManual.md(user and operator guide)architecture.md(system overview and references)API/ReticulumCommunityHub-OAS.yaml(REST/OpenAPI reference)
We welcome and encourage contributions. Please include appropriate tests and follow the project coding standards.
RCH uses Ruff for linting with a 120-character line length and ignores E203 to align
with Black-style slicing.
-
With Poetry (installs dev dependencies, including Ruff):
poetry install --with dev poetry run ruff check . -
With a plain virtual environment:
python -m pip install ruff ruff check .
This project is licensed under the Eclipse Public License (EPL). For more details, refer to the
LICENSE file in the repository.
For issues or support, open a GitHub issue
You can help support the continued development of open, free and private communications systems by donating via one of the following channels to Mark, the original Reticulum author:
- Monero: 84FpY1QbxHcgdseePYNmhTHcrgMX4nFfBYtz2GKYToqHVVhJp8Eaw1Z1EedRnKD19b3B8NiLCGVxzKV17UMmmeEsCrPyA5w
- Ethereum: 0xFDabC71AC4c0C78C95aDDDe3B4FA19d6273c5E73
- Bitcoin: 35G9uWVzrpJJibzUwpNUQGQNFzLirhrYAH
- Ko-Fi: https://ko-fi.com/markqvist


