Profile interop: Use public/private key/value storage provided by Matrix protocol
We can see such data as "Default Display Name", "Preffered Pronouns", "Bio" in #70. Matrix doesn't have these on protocol level, but they can be arbitrarily added to user's key/value storage without the need for such room as of type org.matrix.msc3815.profile (but it's most needed for storing avatar attachments, see #379).
You can even choose between public and private storage. Public key/value storage may be used for bio, preferred pronouns, and etc. Private - for Third Room preferences synchronized between devices/browsers.
Yup, agreed that we should not be using custom "profile rooms" for this.
afaik, Profiles are limited to display name and avatar. What public key/value storage are you talking about?
Specification seems to be mentioning the ability to publish arbitrary data on user, but I couldn't find any endpoint that does it.
My point is that Thirdroom's implementation can go along with extensible profiles once they are described for implementation:
- https://github.com/matrix-org/matrix-spec-proposals/pull/1769
- https://github.com/matrix-org/matrix-spec-proposals/issues/3795
https://github.com/matrix-org/matrix-spec-proposals/pull/1769 seems to describe extensible profiles with similar approach as of Thirdroom's, and that is publishing them as rooms. I recommend looking into that one and see if it gets finally unified.