Could you say more about this? What exactly is broken about the experience in Tract? I have never heard of Qutebrowser.
For a documentation thing like this, I’d generally recommend avoiding a separate scrolling pane for the primary content, but rather arranging so that it can use the document’s scrolling element. This gets the scrollbar in the place people generally expect it in web things, and makes it work regardless of whether the JS loads.