MetaMask / MetaMask/metamask-mobile

Spike: Performance Audit for Mobile Core UX

Open
#23,608 0 comments 0 reactions 0 assignees View on GitHub
team-mobile-ux
Dominant language
TypeScript
Stars
3k
Forks
1.7k
Avg merge
1d 14h
Merged PRs (30d)
669

Description

### What is this about?

- **Three audit areas** as requested:
- 🔥 Release-Profiler trace & analysis
- 🌐 API audit (duplicate calls, timing issues)
- 💾 Controller state analysis (ever-growing state)

## 🎯 Deliverables

1. **Time-boxed**: 1-2 days (12-17 hours)
2. **Three reports**: One for each audit area
3. **Actionable output**: Implementation tickets for all findings including preventative measures
4. **Quantitative focus**: Emphasizes measurements (ms, KB, %) not subjective assessments
5. **Performance best practices**:
- Using physical devices for profiling
- API calls
- Watch for duplicate calls
- Watch for calls when they are not needed
- State cleanup strategies
- Caching opportunities

### 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

Both files reference your existing documentation:
- `docs/readme/release-build-profiler.md` - Profiling guide
- `docs/readme/performance.md` - Optimization patterns
- [Nightly RC with builds release profiler enabled](https://consensys.slack.com/archives/C093JQSEPJL)
- [API tracing audit training](https://www.loom.com/share/87f745c6635843e6b332886cb175407b?sid=6e936653-09f9-44a5-9eff-d9e0b6d2cbf4)
- Tools: API tracing, SpeedScope, Redux DevTools

Contributor guide

Open the contributing guide

Research direction

Start by reading docs/readme/release-build-profiler.md and docs/readme/performance.md, then use a physical device with the release profiler, API tracing, SpeedScope, and Redux DevTools. Done means producing three quantitative audit reports covering profiling, API calls, and controller state, plus actionable implementation tickets and preventative measures for each finding.

Written by the indexing model from the issue text.

Assessment

Tech stack
react-native, redux, typescript
Domain
api, devtools, mobile-dev, performance
Issue type
Refactor
Difficulty
4/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
32/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.