matrix-org / matrix-org/matrix-viewer

Load messages after the given day

Open
#72 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

A-archive-room-view T-Defect
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

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.