Decentralized message broker for public groups in Sphinx. Anyone can run a sphinx-tribes server, to route group messages.
sphinx-tribes clients can be sphinx-relay nodes, apps, websites, or IoT devices.
sphinx-tribes is an MQTT broker that any node can subscribe to. Message topics always have two parts: {receiverPubKey}/{groupUUID}
. Only the owner of the group is allowed to publish to it: all messages from group members must be submitted to the owner as an Lightning keysend payment. The group uuid
is a timestamp signed by the owner.
Authentication is handled by sphinx-auth
docker build --no-cache -t sphinx-tribes .
To run tribes frontend locally, use these ports:
- tribes:
yarn start:tribes:docker
(localhost:23000) - people:
yarn start:people:docker
(localhost:23007)