Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inheritance wallet - Chapter 2 - Cosigner onboarding #1100

Open
wants to merge 18 commits into
base: master
Choose a base branch
from

Conversation

rabbitholiness
Copy link
Collaborator

@rabbitholiness rabbitholiness commented Jul 8, 2024

This PR adds a new page to the inheritance wallet reference design. It covers how Alice imports the family savings wallet to her app and enables her signing device to sign transactions.

👀 Preview link 👀

It also updates the landing page to reflect the final structure of the reference design.

Copy link

netlify bot commented Jul 8, 2024

Deploy Preview for bitcoin-design-site ready!

Name Link
🔨 Latest commit ba719d6
🔍 Latest deploy log https://app.netlify.com/sites/bitcoin-design-site/deploys/66e44bd60bbf550008b3a4af
😎 Deploy Preview https://deploy-preview-1100--bitcoin-design-site.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

@rabbitholiness rabbitholiness changed the title Initial commit Inheritance wallet - Part 2 - Cosigner onboarding Jul 8, 2024
@rabbitholiness rabbitholiness self-assigned this Jul 8, 2024
@rabbitholiness rabbitholiness marked this pull request as ready for review July 8, 2024 12:31
@rabbitholiness rabbitholiness requested a review from GBKS July 8, 2024 12:31
@rabbitholiness rabbitholiness changed the title Inheritance wallet - Part 2 - Cosigner onboarding Inheritance wallet - Chapter 2 - Cosigner onboarding Jul 8, 2024
- Added cosigner onboarding page
- Added images
- Removed icons on the landing page, as they are not really helpful.
- Updated the chapters on the landing page to reflect the final structure.
- Updated editor's notes
- Minor text changes.
@rabbitholiness rabbitholiness force-pushed the inheritance-wallet-2-cosigner-onboarding branch from a5a5b64 to db293f2 Compare July 10, 2024 11:00
- Save the wallet backup kit.
- Enable her BitBox to sign transactions.

### Enabling the signing devices
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Alice already connected her signing device previously when she created the key. Could the application just automatically make that connection between the newly added wallet and the previously created key?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know if that would work. During the wallet creation flow Alice's device has never seen the final wallet descriptor, which it needs to enable transaction signing. It has only seen the wallet configuration template and the role of its key in that configuration.

Copy link
Contributor

@GBKS GBKS left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good. It took me some re-reading to piece together the full logic of the interaction rounds:

  • Bob created wallet template and shares it
  • Co-signers create keys and give them to Bob
  • Bob finalizes the wallet config and shares it with co-signers
  • Co-signers import the wallet config and connect it to their keys

A diagram could help give that big picture overview before the user digs in, and the sub-pages could reference the diagram to show which step they illustrate. What do you think?

@mouxdesign
Copy link
Collaborator

Nice work Michael, I second Christophs suggestion here to add in a high level overview of the user flow. It seems from reading through the co-signer onboarding there are the following steps. Some are on the side of Bob and some on the side of Alice. Then there are some actions where they are interacting.

One symbol or color could be used for Bob, one for Alice and one for the interaction.

The process as I understood it:

Part 1: Bob: Initiating Cosigner Onboarding

  1. Bob selects "onboard cosigner" task in his app
  2. Bob's app generates a QR code or exportable wallet configuration

Part 2: Bob and Alice: Sharing Wallet Configuration

  1. Bob shares the QR code/configuration with Alice

Part 3: Alice: Importing Wallet

  1. Alice opens her app and selects "Recover an existing wallet"
  2. Alice scans the QR code or imports the configuration
  3. Alice reviews the wallet configuration
  4. Alice confirms and adds the wallet

Part 4: Alice: Setting Up Signing Device

  1. Alice connects her BitBox device to her app
  2. Alice exports the wallet configuration to her BitBox
  3. Manually checks off the "signing devices enabled"

Idea to expand on the conclusion at the end:

  • Both Bob and Alice now have access to the shared wallet
  • Both can view the wallet and its balance in their respective apps
  • Both can initiate and sign transactions using their respective devices

Error messages

Something that might come up for a UX designer using this to design the wallet are error messages.
What error message would they see when:

  1. The QR code scan fails
  2. There are incompatible wallet configurations

- Added a short process overview and diagram to the wallet creation page.
- Updated the conclusion for clarity
- Minor text changes
@rabbitholiness
Copy link
Collaborator Author

rabbitholiness commented Aug 15, 2024

Thanks for the feedback, @mouxdesign and @GBKS . I added a short process overview section and a diagram at the beginning of the wallet creation page.

I also added a dedicated section at the bottom of the cosigner onboarding page, as @mouxdesign suggested.

mouxdesign
mouxdesign previously approved these changes Aug 19, 2024
Copy link
Collaborator

@mouxdesign mouxdesign left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTG, just one minor suggestion. Thanks so much for all your work Michael.

@danielnordh
Copy link
Contributor

danielnordh commented Sep 10, 2024

I made a bunch of individual code suggestions, hoping that's the least work for you.

A general style point that I did not make suggestions for as it is page wide:

  • Bulleted lists should not end lines with punctuation

@rabbitholiness
Copy link
Collaborator Author

Thanks for the helpful feedback, @danielnordh . I just pushed a revision that should address all of the feedback.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: In Progress 🏗️
Development

Successfully merging this pull request may close these issues.

4 participants