Description
The goal of the onboarding process is to either get the user set up with a new wallet, or to help the user restore an existing wallet. The onboarding should feel like going through a step-by-step process, animations may be useful here to transition between different stages of the onboarding.
1. Language selection screen
Currently the behavior of the wallet is such that when the user first opens the application, the default language is the same as the one set in their operating system, however this isn't ideal as many non-English speaking Bitcoiners are quite comfortable interacting with a wallet in English.
The first screen that should display when onboarding a user is the language selection screen, this will be a screen with a list of available languages for the user to select from, the current default language of the user's operating system will be already selected, but the user is free to choose another language.
2. Create/restore wallet screen
Once the user has picked their language, we need to know what action they want to take, if they want to create a new wallet or restore an existing wallet. So this will be a simple screen in the onboarding process that allows a user to pick what action they want to take.
3. Create
The user wants to create a new wallet, great. This screen just needs to display some sort of notice to the user that they need to write down their seed phrase, along with a "Generate" button that when pressed will bring up the seed words. How this is done is up to the designer, but as long as it's simple and intuitive to use, it'll be fine.
4. Restore
The user wants to restore their old wallet, they have to enter their 12 word seed phrase, so this screen needs to display 12 textfields and a button.
Screenshots of the current onboarding screens:
Activity