Home / About / Engineering / 084: The view of what was read as a setting, a live margin line, reading by pace, and no jump when scrolling back up

Engineering · done

084: The view of what was read as a setting, a live margin line, reading by pace, and no jump when scrolling back up

The view of what was read as a setting, a live margin line, reading by pace, and no jump when scrolling back up

Id084
Statusdone
Kindfeature
Priorityhigh
Created2026-10-18T01:00:00Z
SourceDinis, in chat, 18 October 2026, after a day of use: "Don't put that top banner with the multiple options in the top ... that should be a general top level setting, and it should be also overwritten by article ... on the UX on the right ... make it a little bit bigger ... add a config section there"; "when I have ... the ones that collapse things ... the screen moves ... as soon as I scroll up a little bit ... where am I moved ... that's very confusing"; "that little bar on the left ... Can you change its color automatically in real time? ... from that light color to the current color ... that's the only one that should change"; "the faded ... shouldn't fade ... or else it fades halfway through I'm reading"; "if the user is scrolling up slowly, that indicates the article's been read ... if I scroll up a certain speed, you can assume that it's not ... by the time I got to the end ... I got that 100% mapping, and it's okay to give me that visual clue
Releasev0.12.110
Effortmedium
Fileadmin/engineering/issues/done/084-a-setting-a-live-line-reading-by-pace.md

What is asked

Five changes to card 082's views and card 081's strip, after a day of use:

  1. No bar at the top. The view is a setting made once: one for every article, which any article can override, in the panel on the right, larger, with a settings section.
  2. The folding views (Paragraph, Line, Hidden) must never move the page under the reader. Scrolling back up a little threw the reader elsewhere.
  3. The margin line changes colour as the reader reads, smoothly, from a light tint to the solid colour. It is the only view that changes live.
  4. Faded must not fade a section the reader is part way through.
  5. A slow scroll, either way, is a signal of reading; a fast one is not. Reaching the end at a reading pace gives 100%, and that is shown.

Scenario

Given a reader with Line chosen, part way down an article, the first sections read
When they scroll back up with a trackpad or a phone, the scroll still moving
Then nothing on the page changes while it moves
And once the page has been still for 0.7 seconds, the sections read above fold
And the words on screen do not move

Given a reader in Margin
When they read a section
Then the line beside it goes from pale to solid in steps of 5%, slowly
And a tick appears beside its heading when it is read in full

Given a reader who scrolls through an article at about 320 words a minute
Then every section counts as read by pace, the page reaches 100%, and the chip's dot becomes a tick
But the same scroll at four times the speed counts by pace only its first few seconds

Given the chip's panel
When the reader opens Settings
Then they see the six views for every article, each with what it does, a choice for this article alone, and Pause
And the choices are kept in this browser

Outcome

Tests: admin/build/test_reading.mjs (the real-time smooth-scroll test in Line and Hidden; nothing while moving; Settings for every article and for one; Faded only read in full; the live margin; pace: a slow scroll to 100% with the tick, four times the speed, a jump, paused); admin/build/test_pane.mjs (the new keys). The article Your reading, your controls has an update section.

Back to the board.

For an agent

Issue 084 on newsroom.sgit.ai: The view of what was read as a setting, a live margin line, reading by pace, and no jump when scrolling back up. Status done, kind feature, priority high, release v0.12.110. Source file admin/engineering/issues/done/084-a-setting-a-live-line-reading-by-pace.md.