What I'm describing, I think could be the basis for federated services.
I imagine implementing RSS feeds and RSS Aggregators on top of a system like this.
And lots of other services, too.
I like the idea of it being capability based and sandboxed, because then I can feel safe running a service you wrote on my machine.
And I like the idea of all of the networking being in the framework, rather than being implemented in each app. Just like Sandstorm.io takes a lot of the problems of sharing out of each app.
The way this article ended up with WASM + Tailscale in the browser seems like a great way for a client to talk to a server based on WASM + Tailscale, like I want. So then my phone can connect to my home PC, running these federated services. I can picture implementing Google Photos on top of that. With sharing, too.
Edit: oh it's already a thing now? https://tailscale.com/kb/1084/sharing/
But what I really want is a capability-based WASM sandbox runtime (like wasmtime or workerd from Cloudflare) that provides an API that lists people that it can send messages to (through Tailscale.)
I configure the runtime with my contacts, and say which apps can communicate with which people.
And then a Dynamic DNS-like system for me to have an identity key, and look up the servers to find them. In case my contacts need to migrate to a new server. Maybe Tailscale already does this?
The runtime keeps the apps updated (like Sandstorm.io).