matrix-org / matrix-org/matrix-viewer
Load messages after the given day
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 84
- Forks
- 10
- PR merge metrics
- No merged PRs in 30d
Description
Following up with the UX problems mentioned in https://github.com/matrix-org/matrix-public-archive/pull/71, it would be really nice to be able to load messages after the given day:
> ## UX problems
>
> ### We can't show messages after the selected day
>
> With `/messages`, we can only pick an event and paginate backwards because paginating forwards does not work properly with `/backfill`. And `/context` doesn't `/backfill` at all.
>
> Because we can't get messages after the selected day, if the day doesn't have enough messages to fill up the screen, the URL will immediately change to a day before and there is no way to scroll low enough to select the day again except for the calendar.
>
> *-- https://github.com/matrix-org/matrix-public-archive/pull/71*
### Todo
- [x] Create MSC for being able to `/backfill` forwards -> [MSC4000](https://github.com/matrix-org/matrix-spec-proposals/pull/4000)
- [ ] Maybe update `/context/{eventId}` to backfill and with the MSC, we can backfill both forwards and backwards from the given `eventId`. We can then use `/context` instead of `/messages`.
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 the /messages and /context/{eventId} flows, along with the linked MSC4000 discussion, to understand the available forward and backward backfill behavior. Confirm the expected behavior for a selected day with too few messages; done means the viewer can load later messages and keep that day selectable.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- api, frontend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100