Project: Simplify Onboarding Process

type: #Project
status: shaping

Problem

Users are loosing their keys, because we haven't done a really good job on explaining how important is to store those keys securely. This is the first time some of our target users are exposed to key-pairs and systems that does not have a central record of all their users. This project is a way to make a transition from a central-server system and what Hypermedia wants to become.

Solution

Simplify the Onboarding by storing the account keys temporarily

There are secure mechanisms in every OS we support to store values behind the user's OS master password. We should be able to store the account words using this.
This will enable us to "defer" that step from the onboarding, simplifying the whole Onboarding process drastically. The onboarding for a new account can be:
    welcome screen + button to create a new account.
    (Optional) Update profile
    (Optional) Connect to site
    (Optional) enable wallet
We need to consider the other scenario of creating a new device for a current account and also creating a new account from a custom set of words. We can add a button to those other two options in the welcome page.

Permanently prompt the user about storing its keys

After we get into the main screens of the app, we should check if we have the words stored. If that's true, then we need to show a floating modal to remind users to do the "words saving" step.
This step can happen as a dialog over all the app (blocking any other action). We need to explain what this is and that after finishing this flow we will not be storing the words anymore so we can proceed to safely remove the words from this special place.

Scope

1.5 weeks depending on how complex we want this new flow to be.

Rabbit Hole

TBD

No-go