Mesh Canary is a network of independent, volunteer-run nodes that each test whether sites are reachable, sign every result with their own key, and pass it on to their neighbors. There is no central server holding the data — so there is nothing for anyone to pressure, breach, or take down.
Each node resolves DNS, opens a TCP connection, and completes a TLS handshake against a target — the same three layers censorship usually breaks one of.
The result is signed with the node's own Ed25519 key. A node's identity is its public key — no registry, no account, nothing to revoke.
Signed reports — and addresses of other nodes — pass from neighbor to neighbor until the whole network converges on the same picture.
Has one IP to block, one operator to pressure, one database to subpoena, and one outage that takes the whole picture down with it.
Every report is independently signed and independently verifiable. Removing any one node — or a hundred of them — doesn't change what the rest already know.
One command sets up a virtual environment, installs the one dependency, and gives you a wrapper script to start watching.
git clone https://github.com/YOUR_USERNAME/meshcanary.git
cd meshcanary
./install.sh
./run-node.sh
Dashboard lands at http://localhost:8080.
Full setup, including how to connect to other people's nodes, is in the
README.