MetaMask / MetaMask/metamask-mobile

App Performance Start-Up: Lazy Load Controllers that are not required for app start-up

Open
#10,586 0 comments 0 reactions 0 assignees View on GitHub
area-performance team-mobile-platform team-tiger-deprecated
Dominant language
TypeScript
Stars
3k
Forks
1.7k
Avg merge
1d 14h
Merged PRs (30d)
669

Description

### What is this about?

The app start up process should be as fast as possible. Currently, users do not have a good app start experience. This ticket identifies the starting point and method to lazy load controllers that are not needed during start-up.

### Scenario

_No response_

### Design

_No response_

### Technical Details

_No response_

### Threat Modeling Framework

_No response_

### Acceptance Criteria

_No response_

### Stakeholder review needed before the work gets merged

- [ ] Engineering (needed in most cases)
- [ ] Design
- [ ] Product
- [ ] QA (automation tests are required to pass before merging PRs but not all changes are covered by automation tests - please review if QA is needed beyond automation tests)
- [ ] Security
- [ ] Legal
- [ ] Marketing
- [ ] Management (please specify)
- [ ] Other (please specify)

### References

- https://www.notion.so/metamask-consensys/Performance-Game-Plan-83ec0133962a4b7682a64c66e65d566c?pvs=4#42df584cb7064528b0b3892087662b88

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the app start-up process and the linked Performance Game Plan. The issue names no files, entry points, tests, or acceptance criteria, so first identify which controllers are involved and how start-up loads them. Done should mean controllers not required at start-up are lazy loaded and the app start experience improves.

Written by the indexing model from the issue text.

Assessment

Tech stack
react-native, typescript
Domain
mobile-dev, performance
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.