how it works

Your network. Your watcher.
Our blindfold.

Vigila is three pieces working together — and only the piece that can't read anything is ours. Here is the whole system, no jargon required.

Three steps from "link down" to your pocket

01 · watch

A little box watches your routers

The relay is a small program you run at home or in your rack (Docker, happy on a Raspberry Pi). It checks your routers every 15 seconds — even while your phone sleeps. Why? iPhone apps aren't allowed to watch networks in the background, so Vigila gives you a watcher you own.

02 · decide

It decides what's worth waking you for

Link down? Router rebooted? CPU pinned for ten minutes? Rules withdebouncing make sure a flapping cable means one alert, not forty. Quiet hours hold the small stuff till morning — critical always gets through.

03 · deliver

It seals the alert and sends it

The relay encrypts the alert with a key only your iPhone has, and hands the sealed envelope to our tiny forwarding service, which passes it to Apple. Your phone opens it. Nobody in the middle can.

Who runs what

Everything that touches your routers or passwords stays inyour hands. The only thing crossing the internet is an envelope nobody en route can open.

YOUR HOME / RACK — YOU RUN THISYour RouterOS routersthe thing being watchedThe relayyour watcher · Docker box,NAS, Raspberry PisealedenvelopeHOSTED BY US — ONE BLIND BOXThe bridgeforwards sealed envelopes to Apple.Cannot read them. Keeps only adevice token and a key hash —nothing identifying, no contents.pushAPPLEAPNs → your iPhone& Watchthe only place theenvelope opensthe boundary · your side / our sidewan link down · CHR-core/ether1your relay — readable, yoursgAF2kL0…9xTzB1c4Qm7Yw2VhE≡our bridge — ciphertext, unreadable

→ no ports opened to the internet · the relay only dials out · works behind NAT

What each party can see

This is the whole point of the design — don't take our word for it, take the architecture's.

Your router passwordsAlert contentsYour network data
Your iPhone & Watchyes — in the Keychainyesyes
Your relayyes — encrypted at restyes — it writes themyes
Our bridgeno — no field exists for themno — ciphertext onlyno
Apple (APNs)nono — ciphertext onlyno

Fair questions

What if the relay itself goes down?

Then nothing inside your network can report it — the honest limit of any self-hosted watcher. Run the relay on hardware separate from what it watches (or off-site), and the app always shows live status whenever you open it on your network.

Do I need a static IP or open ports?

No. The relay only makes outgoing connections. It works behind NAT, CGNAT, and a firewall that blocks everything inbound.

How does my phone know it's talking to my router?

On first connect, Vigila pins the router's certificate fingerprint — like SSH does. If it ever changes, the app blocks and asks you before sending anything.

Is any of this "trust us"?

As little as possible. The protocol is documented, the client talks only to your routers, your relay, and Apple — and the bridge's inability to read alerts is enforced by tests, not promises. See Privacy for the formal version.