Page MenuHomePhabricator

Onboarding: Interests Selection
Open, HighPublic8 Estimated Story Points

Description

Background

Once users have moved past the intro screens, they should be given the opportunity to select topics and articles they care about. This task covers the "What are you interested in?" screen where users can browse categories, filter article cards, and select individual articles to personalize their feed.

User Story

As a new user, I want to select topics and articles I care about during onboarding, so that my explore feed is personalized to my interests from the start.

Requirements

  • When users proceed from the privacy screen, users should be introduced the concept of personalization with emphasis on collecting minimal data with the "Follow your curiosity" screen. Users can choose to skip personalization which lands them into the community feed. Alternatively users can move forward through the next step of onboarding which will be to personalize their feed.
  • Users should be presented with a set of topic/category chips and a masonry grid of article cards they can browse related to that category.
  • Before any selections are made, Article cards should be the same as what's shown in discover when someone selects "Let me choose based on my interests"
  • It's acceptable to have a maximum of 25 articles that load.
  • Topic chips list should be the Parent topics from ORES https://www.mediawiki.org/wiki/ORES/Articletopic
    • Biography
    • Food and drink
    • Internet culture
    • Linguistics
    • Literature
    • Media
    • Performing arts
    • Philosophy and religion
    • Sports
    • Visual arts
    • Geographical
    • Africa
    • Central America
    • North America
    • South America
    • Asia
    • Europe
    • Oceania
    • Business and economics
    • Education
    • History
    • Military and warfare
    • Politics and government
    • Society
    • Transportation
    • STEM
  • Selecting a topic chip should show article cards relevant articles to that topic into the article section
    • Article cards should be the highest ranked articles associated with the most recently selected topic
  • Upon selection of a new or additional topic, articles related to that topic replace all previous articles on the screen. Any previously selected articles remain on screen with a highlighted state
  • Selecting a topic chip or article will allow them to see articles relate to that topic/article in the "For you" tab later on
  • Users should be able to tap individual article cards to select them. Selected articles should be visually indicated within their topic and a counter at the bottom should reflect the number of selections.
  • Users should be able to search for a specific article using the search bar to add to their selected articles list.
  • Users can skip this step entirely, which should land them in the community feed. Alternatively, they can proceed to the next onboarding step with or without selections.
  • If users fail to select interests and they have not read at least 5 articles, then they should see an "empty state" version of their For You tab. A separate ticket will be created to cover the Empty State version of the For You feed
  • If a user abandons the flow after having made selections, apply the selections to their feed upon next open of the app

Design Link

• Follow your curiosity Figma link →
• Initial state of the screen: nothing selected Figma link →
• 1 category selected (example) Figma link →
• 1 individual article within a category selected (example) Figma link →
• Another category selected (example) Figma link →

Interaction video - personalization: https://drive.google.com/file/d/1P2t3Z7-8YDH_6y33NvH1LMja5VwA6eu0/view?usp=drive_link

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
JTannerWMF triaged this task as Medium priority.Mar 3 2026, 3:49 PM
Seddon raised the priority of this task from Medium to High.Mar 17 2026, 4:40 PM
TLessa-WMF added a subscriber: HNordeenWMF.

@HNordeenWMF nice to have flow added. Please take a look when you have the chance.

@JTannerWMF @HNordeenWMF Added a "Deselect All" button, which is useful if users want to start their selection over from scratch. Since they can choose articles and topics, they may not group them in one view like we currently have.

HNordeenWMF updated the task description. (Show Details)
HNordeenWMF updated the task description. (Show Details)
HNordeenWMF updated the task description. (Show Details)
HNordeenWMF updated the task description. (Show Details)

Hi @HNordeenWMF

Initial state of the screen: nothing selected Figma link

  1. When a user lands on the interest screen for the first time and no chips are selected, should we display random articles similar to the Discover settings?

Note: This screen should align with the Discover screen when users choose seed articles for recommended reading list. If changes are made to the design of the screen it needs to be replicated in both places.

  1. Does this mean the design with categories as chips should also be included in the Discover interest selection screen?
  1. The articles should be similar to what appears in Discover when you select "let me choose based on my interests" on Discover. It's not random, they seem loosely related to my history. I'll update the requirements with this
  1. If possible, yes! Does it increase scope either way include them or omit them from Discover?
HNordeenWMF added a subscriber: Seddon.

@WRai-WMF for this task, are you currently proceeding with Topics or Categories? Topics is preferred, and @Seddon told me it would be possible, so I want to double check.

I was planning to use Categories since we don't have a Topics API right now. I'm currently setting up the structure in a way that makes it easy to swap in a Topics API later if we get access to one.

@WRai-WMF in my 1:1 with @Dbrant we were looking at how we'll leverage the interest selections with T419630, and he said we don't need to wait on the Topics API. We can use something we already have to provide recommendations based on Topics.

He requested a list of which topics to prioritize in the UI, I drafted that here https://office.wikimedia.org/wiki/User_talk:HNordeen_(WMF)/Topics_List_for_Apps and I'll work with @TLessa-WMF to update the designs to use this list

Hi @HNordeenWMF

A couple of questions:

  1. Do we have a "show more" at the end of the horizontal topic list? If yes, what happens when the user clicks on it? And what's the default number of visible topics in the list?
  2. Do we have the maximum number of topics/articles that can be selected in this screen?
  3. If the user tries to search for an article in the search screen and leaves during the search. Do we want to show them the interests selection screen again, since the flow is not completed?

Questions

  1. if a user selects more than one topic, should we show articles that match ALL selected topics , or articles that match ANY of them?

@cooltey

Do we have a "show more" at the end of the horizontal topic list? If yes, what happens when the user clicks on it? And what's the default number of visible topics in the list?

No, we should not need this with the format proposed by @TLessa-WMF today in Figma. In this design, all topics under that heading are visible on scroll within the bottom sheet

Do we have the maximum number of topics/articles that can be selected in this screen?

No maximum

If the user tries to search for an article in the search screen and leaves during the search. Do we want to show them the interests selection screen again, since the flow is not completed?

Could we keep/apply the selections they did make, and apply them to the feed the next time they visit? I don't think we should show the onboarding again in this scenario.

@WRai-WMF

if a user selects more than one topic, should we show articles that match ALL selected topics , or articles that match ANY of them?

It would be ideal to have a few articles that match each selected topic. If there is a limit here that helps maintain scope, then please let me know. For example: I'd be fine if we load 25 or so load immediately and then only load more on scroll

Hi @HNordeenWMF

  1. Article cards should include the highest ranked articles associated with all selected topics
  2. It would be ideal to have a few articles that match each selected topic. If there is a limit here that helps maintain scope, then please let me know. For example: I'd be fine if we load 25 or so load immediately and then only load more on scroll

Adding #2 would introduce additional complexity, we would need to query for #1 and then fetch another query for each topic, along with handling pagination. I think we should be keep it as a nice-to-have.

Updated the interaction so a list with "show more" won't be needed anymore (previously nice to have). Reason: Haley and I connected, and we thought that the interaction was becoming too complex - we could trigger analysis paralysis by giving too many options. We are now giving just enough options for readers to customize and move on.

@WRai-WMF you can see the video of the interaction in the ticket.

@WRai-WMF we do need to achieve the basic requirement of

Selecting a topic chip should show article cards relevant articles to that topic into the article section

Check out the updated Ticket & Designs, then let me know: which one would be easier to implement?

  1. Upon selection of a new or additional topic, articles related to that topic are added at the top of the article list. Any selected articles remain on screen.
  2. Upon selection of a new or additional topic, articles related to that topic replace all previous articles on the screen. Any previously selected articles remain on screen. [Design and product preference]

Option 2 would be easier to implement.

Hi @HNordeenWMF @TLessa-WMF,
From the topic chip list, it's currently not possible to query 'Americas' as a whole, since in the backend it’s split into three separate regions. We could include all three regions to cover this, what are your thoughts?

'central-america' => 'Geography.Regions.Americas.Central_America',
'north-america' => 'Geography.Regions.Americas.North_America',
'south-america' => 'Geography.Regions.Americas.South_America',

@WRai-WMF is this only happening for the "Americas" parent topic? Odd!

It's fine to break them out for me, since we're getting close to the 7 continent list then.

Asia, Africa, North America, South America, Antarctica, Europe, and Oceana

yes this is only happening for the "Americas".

Hi @TLessa-WMF, this is ready for design sign off.
The apk is in the feature branch.

To revisit the interest selection screen, navigate to Developer Settings and either:
• Turn off exploreFeedPromptShown, or
• Turn on initialOnboardingEnabled

Note
In the onboarding flow you might see an empty screen which is for feed preference screen [currently in progress].

Here is how GrowthExperiments presents topics for selection:

image.png (1×754 px, 118 KB)

Here is the list above in text format for future reference (we will remove "Biography [women]"):

Architecture
Art
Comics and anime
Entertainment
Fashion
Literature
Music
Performing arts
Sports
TV and film
Video games
Biography (all)
Biography (women)
Business and economics
Education
Food and drink
History
Military and warfare
Philosophy and religion
Politics and government
Society
Transportation
Biology
Chemistry
Computers and internet
Earth and environment
Engineering
General science
Mathematics
Medicine and health
Physics
Technology
Africa
Asia
Central America
Europe
North America
Oceania
South America

DQA and alignment with product and engineer done.
P0: punchlist | Figma

P1/P2: see punchlist

You fixed all the issues 😄 - thank you so much. Our initial plan was to remove Biography (women), and it is included in this build. Since we know we can't remove (all) from the other Biography, I am okay to keep it. cc: @HNordeenWMF for awareness. Moving to the next column.

ABorbaWMF subscribed.

There was some discussion about trimming the topics list. Moving back while waiting for updated topic list.