UX: per-section note-taking
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 2
- Forks
- 1
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 7
Description
Part of the UX backlog. Raised on 2026-06-11 as "notetaking per section".
Let a reader keep their own notes against a section — the things they had to look up, or want to remember when they come back.
Scope
- A note per section, editable inline in the module player
- Stored client-side, alongside progress
Where
components/ModulePlayerClient.tsx for the UI. Storage should follow the pattern in lib/progress.ts (a keyed localStorage store) rather than inventing a second mechanism — likely a new lib/notes.ts with the same track/level/moduleIndex/sectionIndex keying.
Watch out
Notes are user-authored content with no server copy, so they are one cleared browser away from gone. Whatever the UI is, it should not imply they are safe. Worth considering an export.
Also interacts with the reset-progress issue: does resetting progress delete notes? Probably not — decide and be explicit.
Out of scope
Sync, sharing, or accounts.
Done when
Notes can be written, persist across reloads, and it is clear what happens to them on reset.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading components/ModulePlayerClient.tsx and lib/progress.ts to understand the module sections, inline editing patterns, and keyed localStorage store. Trace the existing progress-reset behavior before deciding and documenting whether notes remain. Done means notes can be edited per section, persist across reloads, and have explicit reset behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- frontend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 64/100