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

feat: Speed up wallet onboarding for developers #23615

Closed
wants to merge 1 commit into from

Conversation

pedronfigueiredo
Copy link
Contributor

@pedronfigueiredo pedronfigueiredo commented Mar 20, 2024

Description

  • Introduces a new environment variable, TEST_SRP, which can be defined in the .metamaskrc file. When set, this variable prepopulates the import SRP input field during the onboarding process with a preferred testing wallet.
  • Since setting the TEST_SRP variable signals developers’ intent to expedite the onboarding process, this automatically checks all onboarding checkboxes and enables all progression buttons.
  • For developers who have previously configured the PASSWORD environment variable for automatic wallet unlocking, the onboarding process now includes this password prepopulated.

Open in GitHub Codespaces

Related issues

Fixes: N/A

Manual testing steps

  1. Add TEST_SRP and PASSWORD to your .metamaskrc file
  2. Build the app
  3. Go through onboarding

Screenshots/Recordings

Screen.Recording.2024-03-20.at.19.28.07.mov

Pre-merge author checklist

  • I’ve followed MetaMask Coding Standards.
  • I've clearly explained what problem this PR is solving and how it is solved.
  • I've linked related issues
  • I've included manual testing steps
  • I've included screenshots/recordings if applicable
  • I’ve included tests if applicable
  • I’ve documented my code using JSDoc format if applicable
  • I’ve applied the right labels on the PR (see labeling guidelines). Not required for external contributors.
  • I’ve properly set the pull request status:
    • In case it's not yet "ready for review", I've set it to "draft".
    • In case it's "ready for review", I've changed it from "draft" to "non-draft".

Pre-merge reviewer checklist

  • I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed).
  • I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.

Copy link
Contributor

CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes.

@pedronfigueiredo pedronfigueiredo changed the title feat: Speed up wallet onboarding for developers by automating wallet configuration feat: Speed up wallet onboarding for developers Mar 20, 2024
@danjm
Copy link
Contributor

danjm commented Mar 20, 2024

you can allow developers to skip onboarding entirely using an approach like was done here #19389

Copy link
Contributor

This PR has been automatically marked as stale because it has not had recent activity in the last 60 days. It will be closed in 14 days. Thank you for your contributions.

@github-actions github-actions bot added the stale issues and PRs marked as stale label May 19, 2024
pedronfigueiredo added a commit that referenced this pull request May 27, 2024
## **Description**

- Implements a new development build script that skips onboarding by
preloading state from the end-to-end test fixtures.
- The vault state is dynamically generated from the environment
variables `TEST_SRP` and `PASSWORD`.
- This build hides all the "What's New?" modals and the "Product Tour"
as well as all onboarding screens.
- The network is set to "Sepolia" by default.
- Alternatively, onboarding can be skipped without setting a `TEST_SRP`,
in which case the e2e tests SRP and accounts are used.

[![Open in GitHub
Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/MetaMask/metamask-extension/pull/23781?quickstart=1)

## **Related issues**

Related: #23615, #19389

## **Manual testing steps**

1. Checkout this branch
2. Set a `TEST_SRP` environment variable on your `.metamaskrc` file as
well as `PASSWORD` if you haven't already
3. Run `yarn start:skip-onboarding`
4. Load the extension on your favorite browser and open the popup

## **Screenshots/Recordings**

### **After**



https://github.com/MetaMask/metamask-extension/assets/13814744/e34bac0f-8f6f-4d04-8452-b9962c99cfb9



## **Pre-merge author checklist**

- [x] I’ve followed [MetaMask Coding
Standards](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I’ve included tests if applicable
- [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I’ve applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-extension/blob/develop/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [x] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [x] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.
@pedronfigueiredo
Copy link
Contributor Author

closing this one now that #23781 has been merged

@github-actions github-actions bot locked and limited conversation to collaborators May 27, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
stale issues and PRs marked as stale team-extension-platform
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants