Support lazy loading preinstalled Snaps
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- typescript
- Domain
- backend-api-design
Research direction
Start by reading the SnapController constructor and SnapController.startSnap, which the issue identifies as the relevant entry points. Trace how preinstalled Snap JSON is currently supplied and fetched, then define the metadata and lazy-fetch behavior needed when a Snap is first invoked; done means initialization no longer fetches every preinstalled Snap while invocation still obtains the required Snap.
Written by the indexing model from the issue text.
Description
Currently all preinstalled Snaps must be provided to the SnapController through the constructor, meaning all preinstalled Snaps must be fetched at app initialisation time. This may become problematic when there are many preinstalled Snaps, resulting in a long initialisation time.
We should consider allowing lazy loading of preinstalled Snaps. Instead of providing the full JSON, we can provide metadata for how the Snap should be fetched, and lazily fetch when the Snap is actually invoked for the first time (e.g., in SnapController.startSnap).
- Dominant language
- TypeScript
- Stars
- 856
- Forks
- 660
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 9
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from MetaMask/snaps
-
Difficulty 1/5 Under an hour Newbie friendliness 65/100
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 20/100
MetaMask/snaps#3976 · 1 comment ·
Maintainers usually reply within 1 day
-
snaps-refined-backlog
Difficulty 4/5 3-5 days Newbie friendliness 25/100
Maintainers usually reply within 1 day
-
snaps-refined-backlog
Difficulty 5/5 Over a week Newbie friendliness 25/100
Maintainers usually reply within 1 day
-
snaps-refined-backlog
Difficulty 4/5 3-5 days Newbie friendliness 15/100
Maintainers usually reply within 1 day
Similar issues
-
area/core status/need-triage
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
google-gemini/gemini-cli#29602 ·
Maintainers usually reply within 1 day
-
area: backend enhancement priority: low
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
snapotter-hq/SnapOtter#1879 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
Tencent/BrowserSkill#390 ·
Maintainers usually reply within 1 day
-
good first issue status: needs triaging type: bug version: 2.0
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
medusajs/medusa#17094 · 2 comments ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
Maintainers usually reply within 1 day