Extension:GettingStarted

The GettingStarted extension provides an onboarding process for new editors of Wikipedia.

Features

 * UX/UI described in more detail at Onboarding new Wikipedians

GettingStarted provides several interfaces for suggesting introductory tasks to newly-registered editors, and it uses guided tours to show them how to complete their first edits.

If CentralAuth is installed, GettingStarted users are redirected back to their internal referrer (or the main page, if there was no referrer) post-registration. After users are sent back, they are provided with an invitation to either edit the current page or take a suggestion of something easy to edit.

Without CentralAuth, the above is the same, but the standard core interstitial page letting you change your preferences (or click a link to return) shows. The link to their internal referrer is modified to include a GettingStarted parameter (triggering the above-mentioned invitation).

Dependencies

 * Extension:EventLogging
 * Extension:GuidedTour

Installation
GettingStarted uses Extension:EventLogging to log and Extension:GuidedTour to provide tours and tooltips. As of January 2013 they are required. Extension:CentralAuth is supported but not required.

The extension maintains its lists of articles in a Redis in-memory store. See for the latest requirements and dependencies.

API
The extension implements a MediaWiki API query list submodule "gettingstartedgetpages" that supplies "Related pages" relies on the   prefix search feature of the  Cirrus Search extension.
 * suggested pages to work on
 * or simply related pages.

Suggested pages are optional for the GettingStarted new user experience and they only appear if the wiki has appropriate task categories set. GettingStarted stores lists of articles in Redis, populating them from on-wiki categories such as English Wikipedia's All articles needing copy edit according to the configuration in. You may also exclude certain categories via. On the Wikimedia cluster, configuration settings in InitialiseSettings.php determine their value.

View the generated API documentation for the gettingstartedgetpages API module on English Wikipedia. The following are examples of types of pages you request from the API:





Setting up the environment for automated browser testing
The extension's automated browser tests require that:


 * 1) The  variable has been configured in InitialiseSettings.php; and
 * 2) The   maintenance script has been run.

For example, if and when the extension's nightly build starts failing because there aren't any suggestions (see https://phabricator.wikimedia.org/diffusion/EGST/browse/master/tests/browser/features/modal_on_editable_returnto.feature$10), then run the  maintenance script on the Beta Cluster, i.e.