Page MenuHomePhabricator

StarterKit Essential Tasks: Enable a useful editing gadget
Closed, ResolvedPublic4 Estimated Story Points

Description

Overview

As part of the Essential Tasks block in the Starter Kit Dashboard, we need to implement a card that provides information and support for installing a useful editing gadget, and specifically the the HotCat gadget. This can be expanded to include other editing gadgets, in the future.

Interactive prototype: Link

Screenshot

image.png (514×435 px, 35 KB)

User journey

  1. Install. Install HotCat and confirm it's active in Preferences
  2. Find. App surfaces uncategorized articles from your wiki, pick one.
  3. Categorize. Open the article, follow popup instructions to add categories; app detects the edit.

Card Implementation details

Category: Editing
Tool: Gadgets
Difficulty: Beginner

Possible blockers

None at this point for HotCat support.

Details

Related Changes in GitLab:
TitleReferenceAuthorSource BranchDest Branch
Add HotCat description pagerepos/lpl/starterkit-v1!83eamedinahotcat-descriptionmain
Feat: detect HotCat user preference and unify step UI tokensrepos/lpl/starterkit-v1!71ngkountasfeat/hotcat-preference-checkmain
Feat: add completion button and completion screen for HotCat taskrepos/lpl/starterkit-v1!55ngkountasfeat/complete-hotcat-task-button-and-screenmain
Refactor: modularize HotCat installation steps into separate componentsrepos/lpl/starterkit-v1!53ngkountasrefactor/split-hotcat-tool-into-componentsmain
Add introduction step for "Install gadget" essential taskrepos/lpl/starterkit-v1!38ngkountasfix/add-intro-to-gadget-essential-taskmain
Implement steps 2 and 3 of hotcat installer flowrepos/lpl/starterkit-v1!31eamedinaT422481-full-journeymain
Add HotCat gadget installerrepos/lpl/starterkit-v1!23eamedinaT422481main
Customize query in GitLab

Event Timeline

This task specifically targets the HotCat gadget. Supporting additional gadgets does not appear to be a requirement, and extending the list would likely require case-by-case consideration and implementation, as the user journey is tailored to HotCat and may differ significantly for other gadgets.

The implementation of the feature as currently described in this task is simple and straightforward, given that we already have a proof of concept regarding installing gadgets from external sources (e.g. "en" wiki). I'm assigning 4 story points for the time being.

ngkountas set the point value for this task to 4.Apr 7 2026, 11:51 AM
MaryMunyoki added subscribers: eamedina, MaryMunyoki.

As discussed assigning this to you @eamedina

MaryMunyoki raised the priority of this task from Medium to High.Apr 27 2026, 4:47 PM

One learning so far is that this feature will require we update the provided permission grants to our registered consumer (Starter Kit app). In order for the gadget to be installed, we need to create/edit a page under the Mediawiki namespace (/wiki/MediaWiki:Gadgets-definition) as well as creating a page that adds JavaScript (to load the gadget, ie /wiki/MediaWiki:Gadget-HotCat.js ). The table below compares the current permissions granted with what I needed for it work locally:

Current grantsNeeded grants to install a gadget
High-volume (bot) accessHigh-volume (bot) access
Edit existing pagesEdit existing pages
Create, edit, and move pagesCreate, edit, and move pages
Edit protected pages (risk rating: vandalism)
Edit your user CSS/JSON/JavaScript (risk rating: security)
Edit your user preferences and JSON configuration
Edit the MediaWiki namespace and sitewide/user JSON
Edit sitewide and user CSS/JS

We may be able to reduce extra needed grants with further testing and finetuning, but sharing what I'm seeing so far

User journey

  1. Install. Install HotCat and confirm it's active in Preferences
  2. Find. App surfaces uncategorized articles from your wiki, pick one.
  3. Categorize. Open the article, follow popup instructions to add categories; app detects the edit.

I like that the 3-step process feels friendly and inviting. Am I correct to assume the original intention or purpose of this journey is mostly educational? Besides the actual HotCat installation, it's to guide the user through a first use and teach how to use the gadget. I think there's probably room for some simplification:

1... confirm it's active in Preferences

We can ask/encourage the user to verify the gadget is active in the preferences tab, but we can probably simplify and remove at least one button click here (from what's seen in demo link)

3... Open the article, follow popup instructions to add categories; app detects the edit.

The third step is where the educational intent is felt the most, we can provide brief instructions and can link to official gadgets docs (https://en.wikipedia.org/wiki/Wikipedia:HotCat#How_to_use). I don't believe the "app detecting the edit" part is necessary, I think the HotCat gadget is intuitive enough in that it shows immediate visual feedback of the category being added. We could simplify be removing that part

image.png (914×220 px, 30 KB)

I like that the 3-step process feels friendly and inviting. Am I correct to assume the original intention or purpose of this journey is mostly educational? Besides the actual HotCat installation, it's to guide the user through a first use and teach how to use the gadget. I think there's probably room for some simplification:

Yes, this makes sense, and I agree the flow can be simplified further. We can remove the preferences verification step and also skip detecting whether the category was edited. I have updated the prototype. New link is here.

ngkountas updated https://gitlab.wikimedia.org/repos/lpl/starterkit-v1/-/merge_requests/53

Refactor: modularize HotCat installation steps into separate components

ngkountas opened https://gitlab.wikimedia.org/repos/lpl/starterkit-v1/-/merge_requests/55

Feat: add completion button and completion screen for HotCat task

eamedina merged https://gitlab.wikimedia.org/repos/lpl/starterkit-v1/-/merge_requests/53

Refactor: modularize HotCat installation steps into separate components

eamedina merged https://gitlab.wikimedia.org/repos/lpl/starterkit-v1/-/merge_requests/55

Feat: add completion button and completion screen for HotCat task

Noticed an issue while testing this feature on test.wikipedia.org:

On the feature page, it says: “HotCat is active - Available to all registered editors on test.wikipedia.org” while I see that ⧼gadget-Hotcat⧽ is available but not checked on https://test.wikipedia.org/wiki/Special:Preferences#mw-prefsection-gadgets.

Screenshot 2026-05-21 at 5.22.25 PM.png (2,118×1,442 px, 191 KB)

Screenshot 2026-05-21 at 5.26.22 PM.png (1,672×450 px, 94 KB)

In this case, when I continue, I am being asked to use the gadget to add categories to articles, but I don't see the gadget in action. At what point will the “Add Categories” step become ticked and green?

This is the behavior I'm seeing in test.wikipedia.org at the moment: https://imgur.com/a/16JO1ws. Enabling the gadget in preferences should be automatically picked up by the app and allow the user to continue. Do you see anything similar if you try again?

I will submit a followup patch for the missing string <gadget-Hotcat>, thanks for pointing that out!

@eamedina! It works well now. I see a new warning to enable the hot cat gadget from preferences if it is not enabled.