Proposal
Add an opt-in preference for vertical scroll-snap on the post feed, reusing the gallery's existing scroll-snap-type: both mandatory pattern (src/public/styles.css:786).
Why opt-in
Scroll-snap is divisive UX. Some users love it (TikTok-like browsing); others find it disorienting on long-scroll feeds with mixed-height posts. Default off, and tagged experimental because it may be abandoned during testing if the UX doesn't work well.
Schema
New column pref_postSnapScroll (boolean, default 0).
Implementation
- When the preference is enabled, set
scroll-snap-type: y mandatory on the main feed container
- Each
.post gets scroll-snap-align: start (or center — test both)
- Apply via a body class toggled by the preference (e.g.,
body.snap-scroll) so the existing prefs JS pattern works
- Mark as experimental in the dashboard description so users understand it may be removed
Proposal
Add an opt-in preference for vertical scroll-snap on the post feed, reusing the gallery's existing
scroll-snap-type: both mandatorypattern (src/public/styles.css:786).Why opt-in
Scroll-snap is divisive UX. Some users love it (TikTok-like browsing); others find it disorienting on long-scroll feeds with mixed-height posts. Default off, and tagged
experimentalbecause it may be abandoned during testing if the UX doesn't work well.Schema
New column
pref_postSnapScroll(boolean, default 0).Implementation
scroll-snap-type: y mandatoryon the main feed container.postgetsscroll-snap-align: start(orcenter— test both)body.snap-scroll) so the existing prefs JS pattern works