MetaMask / MetaMask/metamask-extension
Persist and recall state in smaller pieces
- Dominant language
- TypeScript
- Stars
- 13.2k
- Forks
- 5.6k
- Avg merge
- 2d 5h
- Merged PRs (30d)
- 451
Description
We have always persisted state in one big blob, and this is some old technical debt that I couldn't find an issue for at quick glance.
Some reasons this is not great:
- Storage writes are heavy-weight and slow
- Passing the entire store to the UI with each update is computationally intensive.
Ideally:
- We would just write updates to disk
- We would only send the UI the data it needs to render
Let this issue be a place for declaring the problem, defining a solution, and implementing it.
Contributor guide
Research direction
No files, tests, or entry points are named. Begin by mapping where state is persisted and where the full store is passed to the UI, then define the smaller-piece design before implementation. Done means updates can be written incrementally and the UI receives only the data needed for rendering.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- full-stack
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100