I wonder if the Solid protocol might be helpful here? [0] I must confess I haven't toyed with it so far, but I am looking for an excuse to try it out.

[0]: https://solidproject.org/

Looks cool, but is more abstract/low-level than what I mean. Could maybe be used as a foundation for it though.