We want to test a share action on mobile article pages, allowing readers to share Wikipedia articles (and eventually highlighted passages) to other platforms via the Web Share API. This is an experiment: we will deliver it to a subset of readers via an A/B test, collect usage data for approximately one month, and then turn the experiment off. If results are encouraging, a follow-up project may scale the feature to production.
Design Mockups
Designer: @JScherer-WMF
Figma specifications- updated Figma spec- T418602: [DESIGN] Share highlights and article share on Minerva
Background
The Reader Growth team has been exploring a "Share Highlights" concept: what if readers could select article text, generate a styled quote card image, and share it to social platforms with a link back to the source? A spike (T414400) confirmed this is technically feasible as a client-side MVP using the Selection API, html2canvas, text fragment URIs, and the Web Share API.
Based on further discussion, we are starting with a simpler article-level share before committing to selection-level (quote) sharing. The rationale:
- Article-level share is simpler to build, test, and interpret — fewer edge cases (text extraction, CJK word boundaries, selection UX on mobile)
- It gives us a baseline signal for whether readers engage with share actions at all, before investing in the more complex quote flow
- The entry point (a persistent share button in the article chrome) has better discoverability than a selection-triggered popover
Quote-level sharing remains a potential follow-up if article-level share shows promise.
Parallel: Baseline measurement (T416945)
Separately, T416945 is measuring how often readers currently arrive via Google text fragment highlights and how often they highlight article text on their own. This work runs in parallel and does not block the experiment. The data may inform whether and how we pursue selection-level sharing in the future.
Approach
MVP: Article-level share
Entry point: A share icon button in the top chrome of mobile article views (always visible).
User flow:
- Reader taps the share button
- A dialog opens showing a rich preview card: article title, lead image (page image from the Page Previews API plus a graphic of the article's summary text as a stylized quote), and attribution
- Dialog also offers background options the reader can select and see the card update automatically in response
- Reader taps "Share" within the dialog → native share sheet opens via the Web Share API
- The shared link points to the article URL
- Tapping the x in the dialog container or tapping anywhere outside the container closes the Share dialog
Technical components:
- Share button integration in Minerva article header
- Codex Dialog component for share preview
- Client-side image generation (T417099) — render the share card (article title, page image, summary text from Page Previews API) into a shareable image
- Page Previews API for card content (title, image, summary)
- Web Share API integration (navigator.share())
- Fallback behavior for browsers without Web Share API support (e.g. copy-to-clipboard or download)
- Experiment instrumentation (funnel: button tap → dialog open → [background options selected →] share initiated → share completed; incoming visit from share link)
Platform: Mobile web. The Web Share API is well-supported on mobile browsers (Android Chrome, iOS Safari). For browsers where this is not supported (including Minerva users on desktop), the download action is available as a fallback.
MVP: Excerpt-level share
Entry point: Reader selects an excerpt of text within the article and sees a Share option.
User flow:
- When reader selects an excerpt of text that is 2+ words long, we show a floating action button for Share at the bottom of the screen.
- Reader taps the share button
- A dialog opens showing a rich preview card: article title, lead image (page image from the Page Previews API plus a graphic of the text excerpt as a stylized quote), and image attribution
- Dialog also offers background options the reader can select and see the card update automatically in response
- Reader taps "Share" within the dialog → native share sheet opens via the Web Share API
- The shared link points to the article URL
- Tapping the x in the dialog container or tapping anywhere outside the container closes the Share dialog
Technical components:
The following subtasks are scoped to excerpt-level (quote) sharing. We will deliver both article-level and excerpt-level sharing.
- T417104: Selection event handling and text extraction
- T417105: Text fragment URL generation
- T417067: CJK text fragment support for zh wiki
- Experiment instrumentation (funnel: select → button tap → dialog open → [background options selected →] share initiated → share completed; incoming visit from share link)
Out of scope: user-selectable images in the card – we are just going to use page image (if present) for the time being.
Fallback Behaviors
| Scenario | Experience | Mocks |
|---|---|---|
| If browser supports native share API | Happy path | existing Figma design |
| If browser does not support native share API | Download as primary CTA and copy to clipboard is only secondary CTA | new fallback mocks for different CTAs |
| If signal is weak/slow | Loading state | existing Figma design |
Experiment Design
Type: A/B test via the Test Kitchen framework within the ReaderExperiments extension
Duration: ~1 month of data collection
Target wikis: ar, zh, fr, vi, en
Audience: Logged-out mobile readers (specifics TBD)
Control: Current experience (no share button)
Treatment: Share button visible in article chrome and as FAB upon selecting text
Spec to come
Success Metrics
TBD – will likely involve tracking share action completion as primary, and maybe some of the earlier steps in the funnel as secondary. We may also want guardrail metrics around retention as in previous experiments.
Open Questions
- What is the final set of target wikis? The standard six, or a different selection?
- What does the fallback look like on browsers that don't support the Web Share API?
- What metadata goes on the share card within the dialog? (The designs at T418602 should answer this — may need to align on final spec)
- Are there any remaining community concerns? Previous share experiments drew pushback over hard-coded social network buttons/logos in the Wikipedia UI (noted in T414400). We avoid this by using the native Web Share API — readers share via whatever apps they already have on their device. This approach was reviewed with community members in a Discord call and received positive feedback.




