Skip to content

fix: tutorial scrollymation snapping to Go! section on landing - #76

Merged
EDRipper merged 1 commit into
mainfrom
fix/tutorial-scrollymation-jump
Jul 31, 2026
Merged

fix: tutorial scrollymation snapping to Go! section on landing#76
EDRipper merged 1 commit into
mainfrom
fix/tutorial-scrollymation-jump

Conversation

@EDRipper

Copy link
Copy Markdown
Collaborator

Summary

  • fresh accounts landing on /tutorial were getting scroll-locked straight onto the "Go!" section, skipping Join Slack / Connect Hackatime / Create a Project entirely
  • reproduced live on the remy ripper test account: clicking Start jumps to Go! immediately
  • root cause: the scroll-lock effect (frontend/src/routes/tutorial/+page.svelte) compared against the reactive scrollY binding, which lags the native scroll event. right when locked flips true (synchronously, right after the landing scrollTo), that binding can still read stale/near-zero, so the clamp snapped scroll up to top (the Go! section) instead of resting on the intended landing section (Join Slack)
  • fix: read window.scrollY directly for the comparison instead of the lagging binding

Test plan

  • click through /tutorial on a fresh/incomplete account and confirm it lands on Join Slack, not Go!
  • confirm scroll-locking (can't scroll past top/bottom) still works while stepping through sections

The scroll-lock effect compared against the reactive scrollY binding,
which lags the native scroll event. Right as `locked` flips true
(synchronously, straight after the landing scrollTo), that binding can
still read stale/near-zero, so the effect clamped scroll up to `top`
(the Go! section) instead of resting on the intended landing section.
Read window.scrollY directly for the comparison instead.
@EDRipper
EDRipper merged commit d39b406 into main Jul 31, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant