1. Hosting the home’s app
The interface is a complete web application: HTML, CSS, JavaScript, whatever libraries the agent finds useful. It bundles it into one file and publishes it with miakapp publish. Miakapp serves it on www.miakapp.com in an isolated frame on a separate origin: it has no network access and no shared storage, and talks to the home only through the window.miakapp bridge. Every publication is versioned and can be undone in one command.
The WebSocket relay connects the pieces. The coordinator opens the connection, outbound: no port to open on your router, no fixed IP address. The relay caches the last published state, so the app opens at once with the last known values and flags the ones that are no longer fresh instead of passing them off as current. It routes every call to the coordinator that declared it.
To be precise: the relay terminates the encrypted connection and sees the state in plain text. This is not end-to-end encryption, and we do not present it as such.
2. Signing people in
Everyone in the home has their own Miakapp account: sign in with Google or with a link sent by email, no password to remember. One person can belong to several homes.
With every call, the relay attaches the person’s verified identity, which the app cannot forge. What they may do is decided by the coordinator, so by the agent, following what you asked: “the kids don’t touch the heating”, “guests can open the gate from 8 am to 8 pm”.
The agent never has your password. You give it access to one home from miakapp.com/pair, with a single-use code valid for ten minutes. It gets its own key, which you can revoke at any time without touching the others.
3. Push notifications
Push notifications on Android, on computers and on iPhone once Miakapp is added to the Home Screen. No app to install from a store. The agent sends them from the coordinator (“the freezer is up to −12 °C”) or with one command, miakapp notify.
4. Working without the internet
If the home’s connection or the relay goes down, the coordinator serves the same app directly on the local network, without the relay or any cloud, behind an access token if needed. The app needs no change: the window.miakapp bridge is the same. Bookmark the local address; it is the one you need the day the router keeps rebooting.