Couple evolving ideas I want to tie together:
We’re starting to research approaches to collections. “Collections” is our current term for a user-oriented data set that multiple apps read/write to, for example: Contacts, Photos, Notes, etc.
We also recognize that as a security-oriented, self-sovereign identity platform many users don’t want to tie their email to the their Blockstack ID. But, email is really helpful for building successful apps. All the major consumer platforms became successful by retained engagement through email or mobile push. You simply need to communicate with your users (through some channel) to build a successful relationship over time. Full stop.
A similar situation relates to other user profile metadata like: First/last name, bio, photo/avatar. We don’t want to burden users with entering all this info at ID creation, and users don’t want to enter that info either. But, it is also very helpful to have this data on hand when trying to build a successful app experience.
A solution that address all of it: Create a ID metadata collection and allow apps to read/write. Email is pretty easy for an example, but the following could extend to any ID metadata:
- Alice wants to use Kanstack app.
- Kanstack requests access to Alice’s ID metadata collection.
- Kanstack needs to send Alice email updates, and checks to see if Alice’s collection contains her email.
- Email is missing, so Kanstack prompts Alice to enter her email.
- Alice enters her email and continues on to use the app.
- Alice then signs in to the Coins app, which requests the same collection, and can access the email written by the Kanstack app.
Good idea? Alternate proposals? Downsides?