Skip to content

Commit

Permalink
Update to Milestone 1.4: Wallet creation
Browse files Browse the repository at this point in the history
Updates describing single-sig wallet creation flow introduced after user testing of the flow
  • Loading branch information
stackingsaunter committed Jun 5, 2024
1 parent 0e66a07 commit e596397
Show file tree
Hide file tree
Showing 29 changed files with 56 additions and 21 deletions.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/create-wallet/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/create-wallet/name-big.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/create-wallet/name.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/create-wallet/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/create-wallet/notifications-big.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/create-wallet/notifications.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/create-wallet/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified assets/images/create-wallet/onboarding-wallet-features-big.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified assets/images/create-wallet/onboarding-wallet-features.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified assets/images/create-wallet/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/create-wallet/password-big.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/create-wallet/password.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/create-wallet/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/create-wallet/wallet-created.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/create-wallet/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/create-wallet/wallet-info-big.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/create-wallet/wallet-info.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/create-wallet/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed assets/images/first-use/ibd-and-connection-big.png
Binary file not shown.
Binary file removed assets/images/first-use/ibd-and-connection.png
Binary file not shown.
Binary file removed assets/images/first-use/[email protected]
Binary file not shown.
Binary file removed assets/images/first-use/ibd-info-big.png
Binary file not shown.
Binary file removed assets/images/first-use/ibd-info.png
Diff not rendered.
Binary file removed assets/images/first-use/[email protected]
Diff not rendered.
2 changes: 1 addition & 1 deletion pages/first-use.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,4 +55,4 @@ Then the user decides where to keep downloaded data. They can easily choose desi
height = 417
%}


After that, user can continue to [create wallet]({{ '/milestones/1-4-create' | relative_url }}), where at the end of the process they begin initial block download.
75 changes: 55 additions & 20 deletions pages/milestones/1-4-create.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,24 @@ In this milestone, we add the wallet creation flow. This will only include singl
image = "/assets/images/milestones/1-4-create.png"
retina = "/assets/images/milestones/1[email protected]"
big = "/assets/images/milestones/1-4-create-big.png"
alt-text = "A visual map of which screens will be added in the 1.3 milestone"
alt-text = "A visual map of which screens will be added in the 1.4 milestone"
width = 800
height = 384
%}

The onboarding flow will be updated to include information about wallet features.
Below is an iteration of the wallet creation flow, including single-key, multi-key, view-only, and custom paths. Many details need to be refined. Click to see it larger.

{% include picture.html
image = "/assets/images/create-wallet/flow.png"
retina = "/assets/images/create-wallet/[email protected]"
big = "/assets/images/create-wallet/flow-big.png"
alt-text = "User flow mock-ups for creating a new wallet."
width = 800
height = 415
%}

## Create single-sig wallet
During the onboarding flow, the user is informed that only single-sig wallets are currently available, but that other options will be added in future implementations.

{% include picture.html
image = "/assets/images/create-wallet/onboarding-wallet-features.png"
Expand All @@ -34,34 +46,58 @@ The onboarding flow will be updated to include information about wallet features
height = 711
%}

Below is an iteration of the wallet creation flow, including single-key, multi-key, view-only, and custom paths. Many details need to be refined. Click to see it larger.
Creating single-sig wallet starts with a screen that introduces user to the concept of wallet stored on user's hard drive with option to protect it with a password.

{% include picture.html
image = "/assets/images/create-wallet/flow.png"
retina = "/assets/images/create-wallet/flow@2x.png"
big = "/assets/images/create-wallet/flow-big.png"
alt-text = "User flow mock-ups for creating a new wallet."
image = "/assets/images/create-wallet/wallet-info.png"
retina = "/assets/images/create-wallet/wallet-info@2x.png"
big = "/assets/images/create-wallet/wallet-info.png"
alt-text = "An informational screen describing introducing single-sig wallet"
width = 800
height = 415
height = 711
%}

Next step is to come up with wallet name, that will also be used as the name of the .dat file stored on user's hard drive.

{% include picture.html
image = "/assets/images/create-wallet/name.png"
retina = "/assets/images/create-wallet/[email protected]"
big = "/assets/images/create-wallet/name.png"
alt-text = "Screen prompting user to input wallet name"
width = 800
height = 711
%}

Now it's time to decide, If the wallet should be encrypted by a password. This step is critical, because in case of loosing the password, restoring the wallet is virtually impossible. That's why this step is forcing users to slow down a bit and confirm they understand the significance of this by using a toggle, which enables them to continue the flow. Users can also skip this step to create a wallet without encryption.

{% include picture.html
image = "/assets/images/create-wallet/password.png"
retina = "/assets/images/create-wallet/password.png"
big = "/assets/images/create-wallet/password.png"
alt-text = "Screen that allows to encrypt the wallet with a password"
width = 800
height = 711
%}

Moving forward, private keys are generated in the software and the wallet has been created. Immediately after that, the user is encouraged to create a backup copy of the wallet .dat file.

{% include picture.html
image = "/assets/images/create-wallet/wallet-created.png"
retina = "/assets/images/create-wallet/wallet-created.png"
big = "/assets/images/create-wallet/wallet-created.png"
alt-text = "Screens showing wallet creation confirmation and encouragement to back up wallet file"
width = 800
height = 711
%}


---

The first use ends with the initial block download. It's a time-consuming activity that users are typically not familiar with from other applications. The following screen ensures that they understand what will happen next, when they will navigate the application independently.
Now, If it's the first use of Bitcoin Core, onboarding user can initiate download of the blockchain. It's a time-consuming activity that users are typically not familiar with from other applications. The following screen ensures that they understand what will happen next, when they will navigate the application independently.

Bandwidth may also be limited or expensive for the user, particularly on mobile. The initial block download is particularly problematic, so we may want to ensure that users are guided towards the best option. Also see [connection settings]({{ '/settings/connection/' | relative_url }}).

{% include picture.html
image = "/assets/images/first-use/ibd-and-connection.png"
retina = "/assets/images/first-use/ibd-[email protected]"
big = "/assets/images/first-use/ibd-and-connection-big.png"
image = "/assets/images/create-wallet/ibd-and-connection.png"
retina = "/assets/images/create-wallet/ibd-[email protected]"
big = "/assets/images/create-wallet/ibd-and-connection-big.png"
alt-text = "Screen that prepares the user for the initial block download, as well as connection settings"
width = 800
height = 417
Expand All @@ -70,13 +106,12 @@ Bandwidth may also be limited or expensive for the user, particularly on mobile.
On Android, a persistent system notification is required to prevent the operating system from pausing the node. This screen explains that to users and prepares them for making an informed decision about accepting or rejecting notification permissions. "Enable" then presents the user with the OS permission request. This can be changed later in OS settings (not in application settings).

{% include picture.html
image = "/assets/images/first-use/notifications.png"
retina = "/assets/images/first-use/[email protected]"
big = "/assets/images/first-use/notifications-big.png"
image = "/assets/images/create-wallet/notifications.png"
retina = "/assets/images/create-wallet/[email protected]"
big = "/assets/images/create-wallet/notifications-big.png"
alt-text = "Screen explaining the rationale and use of notifications"
width = 800
height = 551
%}

After these onboarding steps, users are navigated to the [block clock]({{ '/block-clock/' | relative_url }}), which then connects to the network and starts the initial block download.

After these steps, users are navigated to the [block clock]({{ '/block-clock/' | relative_url }}), which in case of first use then connects to the network and starts the initial block download. If IBD already has occurred, user arrives at their new empty wallet interface that is ready to use.

0 comments on commit e596397

Please sign in to comment.