Page MenuHomePhabricator

[Share Highlights] Set up codebase for Share Highlights
Closed, ResolvedPublic3 Estimated Story Points

Description

We have a very basic prototype for a potential "share highlight" feature here: https://gitlab.wikimedia.org/egardner/wiki-social-dialog/

This codebase is a Vue 3 / Codex single-page application that should be fairly compatible with the existing ReaderExperiments codebase.

Acceptance Criteria
  • Set up a new shareHighlight module in the ReaderExperiments extension. Add Vue and Codex as dependencies.
  • Port over the relevant files (the code in src/ mainly)
  • Add any necessary 3rd-party NPM packages (the prototype code uses https://www.npmjs.com/package/html-to-image to generate images) as extension-specific foreign resource modules
  • Add some logic in the Hooks PHP file to enable activation via MPO override (similar to how we handle other experiments)
    • Like most of our other features, this one can probably be mobile-only for now
  • Replace hard-coded strings with i18n messages

When this work is complete, it should be possible to enable experiment override via the appropriate URL params and trigger this feature (on mobile view, on article pages) by selecting some text in the browser.

Event Timeline

egardner set the point value for this task to 2.Feb 4 2026, 6:21 PM
egardner changed the point value for this task from 2 to 3.

Change #1237594 had a related patch set uploaded (by Eric Gardner; author: Eric Gardner):

[mediawiki/extensions/ReaderExperiments@master] Set up shareHighlight module codebase

https://gerrit.wikimedia.org/r/1237594

Change #1237594 merged by jenkins-bot:

[mediawiki/extensions/ReaderExperiments@master] shareHighlight: Set up new resource module

https://gerrit.wikimedia.org/r/1237594

bvibber raised the priority of this task from Medium to High.Feb 10 2026, 8:47 PM
egardner added a subscriber: bvibber.

I don't think we need to QA this task since this is just the initial setup. We can start QA after we do the first pass of UI refinements (and @bvibber has already filed one follow-up ticket over at T417067).