Long articles are everywhere — documentation, research papers, Substack posts, long-form journalism. And browser tabs are how we "save" them. We pin them. We bookmark them. We email ourselves links. Then we come back hours later, scroll frantically trying to remember where we left off, give up, and close the tab. I got tired of this workflow and built ReadMark , a Chrome extension that automatically saves your scroll position on any page and restores it when you return. This article covers the technical challenges of building a reliable reading position tracker. The Core Problem: Scroll Position Is Not a URL The naive solution is to store window.scrollY per URL. But this immediately runs into problems: Infinite scroll pages shift content as you scroll, so the same scrollY value points to different content after more items load. SPAs change the URL without reloading, so you get position restoration at the wrong logical scroll depth.…