You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Settings page: easier to read and understand (look, wording, layout examples, times; low priority) #261
Low priority. Seen in the web interface demo (2026-10-10).
Problem: the plugin settings page (/plugins/<n>/settings, M5 part 3a) is hard to read: the groups don't stand out, the settings run into each other, and the setting's key (lat, display_time, ...) is at the end of the help text.
Wanted:
clearer, bolder group headings ("Settings of this plugin", "When and how it is shown", "More settings")
better separation between settings
the setting's key on the left, its field and help next to or below it
base the design on common good practice for settings pages (for example the layout of well-known settings screens and form design guides) rather than inventing our own; list the sources used in the PR
Also (follow-up from part 3a): some shared help texts were written for the config file ("see Layouts above", "leave it out to use ...") and read oddly on the page; give the page its own short wording where needed.
Limits: server-built pages and plain CSS, no build step and no JavaScript framework (docs/decisions/web-interface.md); must work on a phone.
Done when: txoof finds the page easy to read in a demo; before/after screenshots in the PR.
More wanted (txoof, 2026-10-10, after the Library pictures demo of #265):
Layout examples: a folded area (opens when clicked) under the layout choice that shows each of the plugin's layouts as an example picture, drawn with the sample data at the screen's size. The Library pictures (Example pictures in the Plugin Library (M5 part 3b-2) #265, web/pictures.py) can be reused: draw one picture per layout instead of only the first.
"When it is shown" (level): the label "When it is shown: alert, interrupt or rotation" is unclear. Give each choice a plain label and one line that says what it does, for example "Takes turns with the other plugins" (rotation), "Shown right away when it has news, then the turns go on" (interrupt), "Stays on the screen until it is dismissed" (alert). Check the exact behaviour in scheduler.py before writing the texts.
"Which layout": the help text ("Which layout (see "Layouts" above). Leave it out to use the first") was written for the config file. On the page it should read something like "Layout: how the information is arranged on the screen", with the layout names in the choice list and the examples above.
Times in human units: "Seconds on screen per turn" (display_time) and other times in seconds (refresh, alert_reminder, alert_max_time) show numbers like 604800 that mean little to most people. Use a slider (or a choice list) with steps that grow: 1–60 seconds, then 5, 10, 15, 30, 60 minutes, then 1, 2, 4, 8, 16, 24 hours (and days where a setting allows it). Show the value as words ("2 hours"). The config file keeps seconds. To decide when starting: which settings get it, the exact steps, what happens with a value from the config file that is not one of the steps (show it as it is, e.g. "7 minutes 30 seconds"), and how it works without JavaScript.
Size: this probably needs two PRs, each based on main: (1) look and wording, (2) layout examples and the time control. Plan the split before coding.
changed the title [-]Settings page: easier to read (headings, separation, key on the left; low priority)[/-][+]Settings page: easier to read and understand (look, wording, layout examples, times; low priority)[/+]on Oct 10, 2026
Low priority. Seen in the web interface demo (2026-10-10).
Problem: the plugin settings page (
/plugins/<n>/settings, M5 part 3a) is hard to read: the groups don't stand out, the settings run into each other, and the setting's key (lat,display_time, ...) is at the end of the help text.Wanted:
Also (follow-up from part 3a): some shared help texts were written for the config file ("see Layouts above", "leave it out to use ...") and read oddly on the page; give the page its own short wording where needed.
Limits: server-built pages and plain CSS, no build step and no JavaScript framework (
docs/decisions/web-interface.md); must work on a phone.Where:
src/paperpi/web/templates/settings.html,src/paperpi/web/static/style.css.Done when: txoof finds the page easy to read in a demo; before/after screenshots in the PR.
More wanted (txoof, 2026-10-10, after the Library pictures demo of #265):
web/pictures.py) can be reused: draw one picture per layout instead of only the first.level): the label "When it is shown: alert, interrupt or rotation" is unclear. Give each choice a plain label and one line that says what it does, for example "Takes turns with the other plugins" (rotation), "Shown right away when it has news, then the turns go on" (interrupt), "Stays on the screen until it is dismissed" (alert). Check the exact behaviour inscheduler.pybefore writing the texts.display_time) and other times in seconds (refresh,alert_reminder,alert_max_time) show numbers like 604800 that mean little to most people. Use a slider (or a choice list) with steps that grow: 1–60 seconds, then 5, 10, 15, 30, 60 minutes, then 1, 2, 4, 8, 16, 24 hours (and days where a setting allows it). Show the value as words ("2 hours"). The config file keeps seconds. To decide when starting: which settings get it, the exact steps, what happens with a value from the config file that is not one of the steps (show it as it is, e.g. "7 minutes 30 seconds"), and how it works without JavaScript.Size: this probably needs two PRs, each based on main: (1) look and wording, (2) layout examples and the time control. Plan the split before coding.