High record loading times -> bad UX #334

Open
opened 2026-02-13 09:40:41 +00:00 by jsheunis · 0 comments
Owner

We need to figure out a way to improve the loading times of records when they render/mount, i.e. work on the NodeShapeViewer

One way is to minimise the requests for any given record viewer. This record, for example, takes ages to load: https://pool.v0.trr379.de/ui/?sh%3ANodeShape=trr379ri%3ATRR379Project&pid=trr379root%3A.

The main culprit is the fact that many related records of related records (of related records) need to be fetched in order to have the pretty display rendering of e.g.

Influenced by:
-  TRR379-Q01 (Service project)

If we don't fetch related records, something like this would show up with a weird PID inside the brackets.

One way to minimise the requests would be to not show some of this on the record, and only display it if the user wants to see extra info. Like the More details functionality. So the question is, what should be shown on a record (of any type) by default? This could become part of configuration.

Then, another way to approach this could be to space out and time requests based on user interaction. E.g. maybe only start the 2nd level recursive fetches of related quads after the direct quads of the record have been retrieved and is already displayed, so that the user can see the main parts of the record while the rest is being fetched in the background. Currently the process waits for everything.

We need to figure out a way to improve the loading times of records when they render/mount, i.e. work on the `NodeShapeViewer` One way is to minimise the requests for any given record viewer. This record, for example, takes ages to load: [https://pool.v0.trr379.de/ui/?sh%3ANodeShape=trr379ri%3ATRR379Project&pid=trr379root%3A.](https://pool.v0.trr379.de/ui/?sh%3ANodeShape=trr379ri%3ATRR379Project&pid=trr379root%3A.) The main culprit is the fact that many related records of related records (of related records) need to be fetched in order to have the pretty display rendering of e.g. ``` Influenced by: - TRR379-Q01 (Service project) ``` If we don't fetch related records, something like this would show up with a weird PID inside the brackets. One way to minimise the requests would be to not show some of this on the record, and only display it if the user wants to see extra info. Like the `More details` functionality. So the question is, what should be shown on a record (of any type) by default? This could become part of configuration. Then, another way to approach this could be to space out and time requests based on user interaction. E.g. maybe only start the 2nd level recursive fetches of related quads after the direct quads of the record have been retrieved and is already displayed, so that the user can see the main parts of the record while the rest is being fetched in the background. Currently the process waits for everything.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
orinoco/shacl-vue#334
No description provided.