interledger / interledger/reports
perf: pause globe rendering when offscreen
Nobody has claimed this yet.
- Dominant language
- Svelte
- Stars
- 1
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
Opening https://interledger.github.io/reports/availability makes Chrome consume memory until my computer becomes unresponsive, sometimes requiring a forced restart.
The likely trigger is the Three.js globe's permanent WebGL render loop. The page only toggles controls().autoRotate, which stops rotation but not rendering—even when the globe is offscreen:
The extreme memory growth may be Chrome/GPU-driver-specific, but the continuous rendering is unnecessary and triggers it.
Please pause the renderer with globe.pauseAnimation() when it is offscreen or inactive. Disabling automatic rotation, loading the globe only on user request, or using a static SVG map would be safer.
Contributor guide
No contributing guide indexed for this repository
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.
Research direction
Inspect src/lib/Globe.svelte around the referenced lines and trace how the Three.js render loop and controls().autoRotate are managed. Reproduce the availability page behavior in Chrome, then verify that rendering pauses when the globe is offscreen or inactive and no longer runs continuously.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- three.js
- Domain
- data-visualization, frontend
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 78/100