Page MenuHomePhabricator

Design: Limit number of items rendered in typed lists
Closed, ResolvedPublic

Description

Discovery and definition

Typed lists in Default View are presented fully, with all its existing items.

E.g. https://www.wikifunctions.org/wiki/Z8

collapsed typed listexpanded typed list
--
Screenshot from 2025-04-04 18-17-00.png (594×297 px, 37 KB)
Screenshot from 2025-04-04 18-16-54.png (697×300 px, 43 KB)

Viewing objects which have many lists, and those lists have many items renders too many components, makes the browser freeze and often crash. Wikidata entities generally fall under this category.

To explore some of these Wikidata items:

  • Go to the page for the function "Fetch Wikidata item: https://www.wikifunctions.org/wiki/Z6821
  • In the "Try this function" section, search an item in the Wikidata item selector
  • Click "Run function"
  • Once the item has been rendered under "Result", click the ">" chevron that precedes the Wikidata link
  • Tip: reload the page before requesting a new Wikidata item for better performance

Similarly, showing the whole lists doesn't really provide a very user friendly UI, as pages become extremely lengthy and they become difficult to navigate:

Screenshot 2025-04-04 at 18-32-07 Fetch Wikidata item - Wikifunctions.png (24×1 px, 2 MB)


Questions and Challenges

As part of the goal of reducing the number of components rendered at the same time, limiting lists to a number of items has shown the most radical difference:

  • Typed list components should not render all items of the list but just N (e.g. 4 or 5)
  • Typed list components should allow the user to explore all the other components available in the list.

Some questions:

  • How to avoid rendering all the list items?
  • How many items should we show?
  • How to allow users to explore the rest of items of the list easily?
    • "Load more" to add N more items to the list?
    • Window to navigate through the list items
  • Multilingual text vs. other lists, should there be any difference?
  • How to stop users from reaching state in which ALL page lists are fully expanded?
  • Related: empty lists T341069: TypedLists: Design and implement a better indication of empty (zero-black) state

Research and plan

  • Research, design exploration and build a proposal:
  • Share findings with the team and assess technical feasibility

Design
Figma


Completion checklist
Before closing this task, review one by one the checklist available here: https://www.mediawiki.org/wiki/Abstract_Wikipedia_team/Definition_of_Done#Design_task_completion_checklist

Event Timeline

DSantamaria triaged this task as Medium priority.Apr 9 2025, 4:56 PM
gonyeahialam changed the task status from Open to In Progress.May 21 2025, 3:58 PM
gonyeahialam claimed this task.

The final design has been reviewed and approved. Closing this task in favor of the development phab task https://phabricator.wikimedia.org/T391130