Developers/Maintainers
This page lists developers who know the most about, and help maintain, core MediaWiki components, key extensions and skins, libraries and other Wikimedia technical infrastructure.
Developer roles[edit]
- Developers contribute to the code of MediaWiki software. They commit changes to the central Git repository by pushing changes for review in Gerrit where the latest copy of the software is stored. Developers include paid Wikimedia Foundation staff and volunteers. For more details, see Developers.
- Maintainers have +2 access to the relevant Git repository and they regularly respond to bug reports and changeset review requests. Anyone with a developer account can submit a patch for review, but only maintainers can merge changes. Anyone may participate in Phabricator and in Gerrit Code Review if they're interested in helping out and gaining experience that way. If you're seeking to become an active maintainer, feel free to contact a maintainer and share this desire and ask if they're willing and able to mentor and involve you proactively for a certain period of time.
- Code Stewards are ultimately responsible for the development policies, support, and overall health of the code in question. They commit to a base level of support such as bug fixes and code reviews. For more information regarding stewardship, see Development policy/Code Stewardship.
- Consultants (where available) are able to field questions / assist with problems if needed but should not be confused with maintainers.
Trends[edit]
Last five quarters[edit]
Yearly[edit]
MediaWiki core[edit]
- See also: Gerrit's list of mediawiki group members (core developers with +2 on all mediawiki repositories).
Component | Description | Steward | Maintainers | Consultants |
---|---|---|---|---|
API | MediaWiki's web-based "action" API that lets people interact with MediaWiki programmatically. |
Platform Engineering Team | Legoktm | |
Authentication and Authorization | Components related to user authentication and authorization, including login and signup (AuthManager), password hashing and storage, session handling (SessionManager), and group permissions.
|
Platform Engineering Team | Parent5446, Gergő Tisza, Taavi Väänänen | |
Benchmarker | Faccility for benchmarking backend latency and resource usage. |
Performance Team | Tim Starling, Timo Tijhof, Aaron Schulz | |
Blocks | Classes and functions related to user blocking mostly around Special:Block and related functions. Separating this out from User Management to reflect reality.
|
Anti-Harassment Tools Team | ||
Comment store | Storing comments such as edit summaries, and log action reasons. Including access layers, value interfaces, and their database schema.
|
Platform Engineering Team | ||
Categories | All issues relating to categories.
|
Unassigned | Bawolff | |
Change tagging | The feature that allows putting tags on revisions, log entries etc. added from edit filters in Extensions (AbuseFilter, TorBlock, etc). |
Unassigned | This, that and the other | |
Configuration | The Config and ExtensionRegistry components, for registering and loading site configuration and extensions.
|
Platform Engineering Team | Legoktm | |
ContentHandler | Representation of content values and their formatting. For the storing of content, see Revision-backend instead. |
Platform Engineering Team | Daniel Kinzler | |
Core testing | Configuration and base classes for checkers, unit testing, and integration testing (PHPUnit, QUnit, etc). |
Unassigned | Timo Tijhof, Antoine Musso | |
Debug Logger | Debug logging functions, debug toolbar, and PSR-3/Monolog integration. |
Unassigned | ||
DjVu | All issues related to DjVu
|
Structured Data team (details and SLA) | ||
Documentation | Meta issues about MediaWiki core documentation both Doxygen/JSDuck-generated and on mediawiki.org |
Unassigned | APaskulin, Timo Tijhof | |
Issues relating to the email notification features and email address verification (Special:Confirmemail etc.) |
Unassigned | 01tonythomas | ||
File management | Management of uploaded files (images, thumbnails, etc.)
|
Unassigned | ||
Gallery | Gallery of media files as created by wikitext <gallery> tag. |
Unassigned | ||
Hooks | Hook system
|
Platform Engineering Team | Tim Starling | |
HtmlFormatter | A library for HTML parsing and manipulation |
Unassigned | ||
HTMLForm | HTMLForm |
Unassigned | ||
HTML Templating | Mustache HTML templating (server-side in PHP, and client-side via mw.template ) |
Unassigned | ||
HTTP Cache | CDN purging and FileCache storage.
|
Performance Team | Aaron Schulz, Timo Tijhof | |
Installer | Installation, setup, and upgrade procedure. |
Unassigned | Jon Robson, James Forrester, Reedy | |
Internationalization | All issues relating to internationalization, localization, translation, and the MediaWiki namespace.
|
Language engineering | Raimond Spekking, Federico Leva | |
Interwiki | Interwiki database and cache |
Unassigned | ||
JobQueue | Job queue |
Platform Engineering Team | Aaron Schulz | |
Language converter | Script conversion for several languages, e.g. Chinese and Serbian. (Problem area -- not much developer capacity here.)
|
Content Transform Team | Liangent, Robin Pepermans, Winston Sung,
Chiefwei (Chinese language) |
|
Logging | Special:Log, mw_logging table |
Unassigned | Umherirrender | |
Maintenance system | The Maintenance script system in MediaWiki core. |
Unassigned | Sam Reed | |
Media handlers | Interface for extracting metadata and transforming media files, and the implementations thereof that ship with MediaWiki core.
The built-in media handlers include for example extracting camera metadata from JPEG, and generating thumbnails from JPEG, PNG, SVG and other files. The interface is consumed by the Parser and Imageinfo API. The transformation methods of media handlers together make up the default image scaler and thumbnail service in core, and form the basis for PdfHandler, TimedMediaHandler, and DjVu extensions. Note that at WMF, the thumbnail service for still images is disabled in favour of Thumbor. |
Unassigned | ||
Merge history | The MergeHistory logic and its API and Special page frontend. |
Unassigned | ||
ObjectCache | The wikimedia/objectcache library (BagOStuff, WANObjectCache, Redis/Memcached clients) and their MediaWiki integration.
|
Performance Team | Aaron Schulz, Timo Tijhof | |
Page deletion | Issues related to deleting and undeleting/restoring pages and revisions (via action=delete and Special:Undelete).
|
Unassigned | Aaron Schulz | |
Page derived data | Management of data derived from a page, including PageUpdater, LinksUpdate, RefreshLinks, and the database for storing this derived data (such as page_props, and link tables). |
Platform Engineering Team | Daniel Kinzler | |
Page-Diffs | All issues relating to the page displaying differences between two revisions (diff=, oldid=, type=revision in the URL). |
Unassigned | ||
Page editing | All issues relating to the edit screen, edit conflicts, and saving edits. |
Editing team | ||
Page-History | All issues relating to the page displaying the history of revisions via the action=history view or Special:History page.. |
Unassigned | ||
Page protection | Protection and unprotection of pages, and issues with protected pages |
Platform Engineering Team | ||
Parser | Issues relating to the process that converts wiki syntax into HTML. |
Content Transform Team | C. Scott Ananian | |
Patrolling | New page patrolling, edit patrolling. "[mark as patrolled]". rc_patrolled etc. |
Unassigned | Marius Hoch | |
Profiler | Issues relating to Profiler. |
Performance Team | Timo Tijhof | |
Recent changes | Bug reports and feature requests related to the special page RecentChanges. |
Growth team (Needs New Owner) | ||
Redirects | All issues relating to redirects. |
Unassigned | Sam Reed | |
Revision backend | Issues related to the backend classes around revisions, blobs, and slots. Including Multi-Content-Revisions (MCR). |
Platform Engineering Team | ||
ResourceLoader | ResourceLoader delivery and management system for loading modules in MediaWiki. |
Performance Team | Timo Tijhof, Roan Kattouw | Jon Robson |
Revision deletion | Hiding and unhiding of individual page revisions, log entries and usernames and revision suppression. |
Unassigned | Aaron Schulz | |
Rdbms | The wikimedia/rdbms library for interacting with relational databases, and its MediaWiki integration.
|
Performance Team | Aaron Schulz, Timo Tijhof | |
Search | Issues relating to the search engine. Note that Wikimedia web sites do not use the default MediaWiki search engine; please file bugs against their Search under "CirrusSearch" instead! |
Search Platform | ||
Sites | Information about other sites |
Unassigned | ||
Shell | Shell framework for calling external binaries. |
Unassigned | ||
Skin system | Issues relating to the skin system, including Skin base classes, ResourceLoader integration, and the provided skinning stylesheets.
|
Web | mediawiki‑skins group, Bartosz Dziewoński | |
Snapshots | Issues relating to XML snapshot generation and loading (maintenance scripts, API, interface at Special:Export/Special:Import)
|
Platform Engineering Team Ariel Glenn, Hannah Okwelum | ||
Special pages | Issues relating to the SpecialPage framework, and the configuration and wiring relating to special pages in general.
With the exception of built-in maintenance reports, issues about specific special pages should be reported under their own dedicated components instead (e.g. Page deletion, Recent changes, Search, Preferences, Watchlist, etc.).
|
Unassigned | ||
Stats | Stats service for Statsd/Prometheus. |
SRE/Observability, Performance Team | Cole White, Timo Tijhof | |
Templates | All issues relating to templates and template inclusion. |
Unassigned | Jackmcbarn | |
Uploading | File upload interface at Special:Upload. (Issues with already uploaded files should be filed under "File management") |
Unassigned | ||
UUID | The Wikimedia\UUID library and the GlobalIdGenerator service wiring that uses it. |
Performance Team | Aaron Schulz, Timo Tijhof | |
User login and signup | Account creation, login, etc. Settings bugs in this component should be moved to the "User preferences" component. |
Unassigned (Growth?)
previously: Product Infrastructure, Platform Engineering Team. |
Gergő Tisza | |
User management | Permissions and authorization |
Unassigned | Jack Phoenix | |
User preferences | The preferences system (sometimes known as user options or user properties), including the PreferencesFactory and UserOptionsManager services, their interface (Special/API), and database table. |
Unassigned | Moderator tools team | |
Watchlist | Bug reports and feature requests related to the special page Watchlist.
|
Growth team (Needs New Owner) | Watchlist Expiry: Community Tech |
MediaWiki extensions deployed at Wikimedia Foundation[edit]
- See also: Category:Extensions used on Wikimedia and phab:source/mediawiki-config/browse/master/wmf-config/extension-list
Extension | Description | Steward | Maintainers | Consultants |
---|---|---|---|---|
3d | Enables upload of three-dimensional model files, and supports thumbnailing and interactive viewing in Media Viewer. |
Structured Data team (details and SLA) | ||
AbuseFilter | Allows privileged users to set specific controls on actions by users, such as edits, and create automated reactions for certain behaviors |
(Active volunteer) | Marius Hoch, Daimona Eaytoy, se4598, Matěj Suchánek | |
ActiveAbstract | Used as part of dumpBackup |
Unassigned | ArielGlenn, Hannah Okwelum | |
AdvancedSearch | Enhances Special:Search by providing an advanced parameters form |
WMDE Engineering (contact EMs) | ||
AntiSpoof | Prevents creation of confusable usernames |
Anti-Harassment Tools | Sam Reed | |
ApiFeatureUsage | Access API feature usage log summaries |
Platform Engineering Team | ||
ArticleCreationWorkflow | Community Tech | |||
ArticlePlaceholder | Provides a special page with Wikidata information about a certain topic, with invitation to create an article for the topic |
WMDE Engineering (contact EMs) | ||
Babel | Adds a parser function to inform other users about language proficiency and categorize users of the same levels and languages |
Language team | ||
BetaFeatures | Allows other extensions to register their beta features in the user preferences |
Unassigned | ||
BounceHandler | Allow MediaWiki to handle bounce email efficiently with VERP headers |
Unassigned | 01tonythomas, Jgreen (wmf) | |
Calendar | Creates a Calendar in pages |
Unassigned | ||
CampaignEvents | Adds tools for organizing events |
Campaigns Product team | ||
Campaigns | Allows to track user account creations related to campaigns |
Unassigned | ||
Capiunto | Provides basic Infobox functionality for Scribunto |
Unassigned | Marius Hoch | |
CategoryTree | Provides a dynamic view of the wiki's category structure as a tree |
Unassigned | ||
CentralAuth | Allows to merge accounts into global accounts |
Unassigned Under review | Taavi Väänänen, Zabe | |
CentralNotice | Adds a central sitenotice |
Fundraising tech | ||
CharInsert | Create JavaScript character insert boxes |
Editing team | ||
CheckUser | Allows a user with permissions to check which IPs are used by a given username and which usernames are used by a given IP |
Anti-Harassment Tools Team | Dreamy Jazz (except Investigate. Not taking ownership but have been doing a fair bit of work on CU so know it well and can help others if needed) | |
CirrusSearch | Implements searching for MediaWiki using Elasticsearch |
Search Platform | ||
Cite | Allows footnotes for citing sources and helps for correctly citing content in offline media |
Editing team | Marius Hoch | |
CiteThisPage | Adds a special page that provides different citation formats for a particular article |
Unassigned | Marius Hoch | |
Citoid | Extension part of the Citoid service |
Editing team | ||
cldr | Import localisation data from CLDR |
Language team | Language team | |
CodeEditor | Provides a syntax-highlighting code editor for site & user JS, CSS and Lua pages, integrating with advanced edit toolbar |
Editing team | Derk-Jan Hartman | |
CodeMirror | Provides syntax highlighting in MediaWiki's wikitext editor. |
Community Tech | Pavel Astakhov | |
Cognate | Centralises Wiktionary links into Wikidata |
WMDE Engineering (contact EMs) | ||
Collection | Allows organization of personal selections of pages in a collection that can be edited, persisted and optionally retrieved as PDF, ODF or DocBook (XML) |
Unassigned Under review | C. Scott Ananian originally: PediaPress | |
CommonsMetadata | Extracts metadata from commons pages |
Structured Data team (details and SLA) | ||
ConfirmEdit | Adds CAPTCHAs for page saves and other user actions. Only QuestyCaptcha is supported. |
Editing team | Emufarmers, Florianschmidtwelzow | |
ContactPage | Provides a contact form for visitors |
Product Infrastructure (SLA details) | Ammarpad | |
ContentTranslation | Allows editors to translate an article from one language to another with the help of machine translation and other aids. |
Language team | Language team | |
CreditsSource | Display source work credits in the page footer |
Unassigned | ||
Dashiki | Renders the JSON used to configure dashiki dashboards in a friendly HTML table |
Data Engineering | ||
Disambiguator | Enables the designation of disambiguation pages with a magic word |
Unassigned | ||
DiscussionTools | Tools to enhance discussion pages |
Editing team | ||
DismissableSiteNotice | Allows users to close the sitenotice |
Unassigned | ||
DonationInterface | Provides fundraising mechanisms for collecting payments |
Fundraising tech | ||
DoubleWiki | Compare wikis in two separate languages side by side |
Unassigned | Thomas PT (Tpt) | |
DynamicPageList (Wikimedia)
(aka Intersection) |
Outputs a bulleted list of most recent items residing in a category, or an intersection of several categories |
Unassigned | Brian Wolff | |
DynamicSidebar | Shows a dynamic sidebar based on user configuration |
Unassigned | Derick Alangi | |
EasyTimeline | Produces an embedded timeline image from special syntax inside <timeline> tags. |
Unassigned | ||
Echo | MediaWiki's notification subsystem |
Growth team (Needs New Owner) | ||
Elastica | Provides base elasticsearch functionality |
Search Platform | ||
ElectronPdfService | Converts wiki pages to PDFs using Electron. |
WMDE Engineering (contact EMs) | ||
EntitySchema | Stores Shape Expressions Schemas on wiki pages (for Wikidata). |
WMDE Engineering (contact EMs) | ||
EventBus | Propagates change events to a RESTful service. Transports data between arbitrary applications, in the form of events that conform to versioned schemas. |
Data Engineering | — | |
EventLogging | Provides logging and validation of web analytics events |
Data Engineering | ||
EventStreamConfig | Exposes event stream configs in an API endpoint. Can also be used to expose configs via ResourceLoader. |
Data Engineering | Andrew Otto | |
ExtensionDistributor | Enables the distribution of extensions from www.mediawiki.org |
Unassigned | Tim Starling | |
ExternalGuidance | Indicates to users that the wiki page being viewed is served through an external service, and provides ways to contribute back to the original wiki. |
Language team | ||
FeaturedFeeds | Adds syndication feeds of wiki's featured content |
Product Infrastructure (SLA details) | ||
FileExporter | Provides a link to export local files to another wiki that has the FileImporter extension. |
WMDE Engineering (contact EMs) | ||
FileImporter | Allows for the easy importing of a file from one wiki to another. |
WMDE Engineering (contact EMs) | ||
FlaggedRevs | Allows for article content management by "editor" and "reviewer" classes |
Unassigned Under Review | Aaron Schulz and Amir Sarabadani | |
StructuredDiscussions (aka Flow) | A modern discussion and collaboration system |
Growth team (Needs New Owner) | ||
FundraiserLandingPage | Enables template parameters to be passed as querystring elements |
Fundraising tech | ||
FundraisingTranslateWorkflow | Locks down translation publishing rights on selected pages |
Fundraising tech | Elliott Eggleston | |
FundraisingEmailUnsubscribe | Donor-facing fundraising email unsubscribe form (on payments.wikimedia.org) |
Fundraising tech | ||
Gadgets | Allows users to enable JS-based, user-provided gadgets from their preferences page |
Unassigned | Roan Kattouw, Ammarpad | |
GeoCrumbs | Adds a trail of bread crumbs to the page |
Unassigned | ||
GeoData | Adds geographical coordinates storage and retrieval functionality |
Search Platform Team | ||
GlobalBlocking | Allows IP addresses to be blocked on multiple wikis |
Unassigned | Taavi Väänänen | |
GlobalCssJs | Allows global CSS and JS on a "central" wiki to be loaded for all wikis in the farm |
Unassigned | ||
GlobalPreferences | Allows a user to decide which user preferences to set as global (wikifarm-wide) and which to keep local. |
Community Tech | ||
GlobalUsage | Enables viewing of global image use in a wiki farm with shared image repository |
Structured Data team (details and SLA) | ||
GlobalUserPage | Enables global (shared between wikis) user pages on a wiki farm |
Unassigned | ||
GlobalWatchlist | Allows a user to view changes to watched pages on multiple sites at once |
(Active volunteer) | DannyS712 | |
GoogleNewsSitemap | Outputs a list of pages based on what categories they are in as an RSS feed or Google news sitemap |
Unassigned | Brian Wolff | |
Graph | Data-driven graphs |
Editing team | Yurik | |
GrowthExperiments | Contains experiments done by the Growth team |
Growth team | ||
GuidedTour | Delivers guided tours |
Growth team (Needs New Owner) | ||
GWToolset | Mass upload of content based on provided metadata |
Structured Data team (details and SLA) | ||
ImageMap | Allows clickable HTML image maps |
Editing team | ||
ImageSuggestions | Image recommendation features for experienced users |
Structured Data team (details and SLA) | ||
InputBox | Allows users to add predefined HTML forms to wiki pages |
Unassigned | Jackmcbarn | |
Insider | Lists volunteer tour guides for travel destinations |
Unassigned | ||
Interwiki | Adds a special page to view and manipulate the interwiki table |
Unassigned | ||
InterwikiSorting | Allows sorting of interwiki links |
WMDE Engineering (contact EMs) | ||
IPInfo | Displays IP information for anti-vandalism purposes |
Anti-Harassment Tools Team | ||
Josa | Automates josa part of Korean postposition process |
Unassigned | ||
JsonConfig | Provides a wiki-based JSON configuration system |
Product Infrastructure (SLA details) | Yurik | |
Kartographer | Allows adding maps to pages |
Content Transform Team | Mateus Santos | |
LabeledSectionTransclusion | Enables marked sections of text to be transcluded |
Unassigned | ||
LandingCheck | Send users to localized landing pages with fallback options |
Fundraising tech | ||
LdapAuthentication | Provides LDAP authentication, and some authorization functionality |
Unassigned | ||
Linter | Help users find out-dated bits of wikitext to fix them |
Content Transform Team | ||
LiquidThreads | A structured discussion system for MediaWiki |
Unassigned | ||
Listings | For use in imported Wikitravel articles. In the future, tags should be substituted by more powerful ones |
Unassigned | ||
LoginNotify | Notify users of suspicious logins |
Community Tech | ||
MachineVision | Interfaces with internal and external machine vision service providers and stores and serves results for usage on-wiki (to be deployed Sept 2019) |
Content Transform Team (but probably needs to migrate stewardship) | Structured Data team (details and SLA) | |
MapSources | Gives access to several data and mapping sources |
Unassigned | ||
MassMessage | Allows users to send messages across wikis |
Unassigned | wctaiwan | |
Math | Renders mathematical formulas between <math> ... </math> tags |
Editing team | Derk-Jan Hartman, Moritz Schubotz | |
MediaModeration | Checks uploaded media for possible child exploitation content. | Platform Engineering Team | ||
MediaSearch | An alternative, media-focused way to display search results through the Special:MediaSearch page. |
Structured Data team (details and SLA) | ||
MobileApp | Serves styles and scripts for use in the Wikimedia native apps |
Apps (SLA details), Content Transform Team | ||
MobileFrontend | Optimizes content for mobile experiences. |
Web (SLA details) | ||
MultimediaViewer | Provides a better experience to users when they click on thumbnails in a page |
Structured Data team (details and SLA) | ||
NavigationTiming | Logs perceived latency measurements from client-side |
Performance Team | Timo Tijhof | |
Newsletter | Adds a preference for newsletter subscription |
Unassigned | Brian Wolff (for emergency issues) | |
NewUserMessage | Adds a message to newly created user's talk pages |
Growth team (Needs New Owner) | ||
Nuke | Gives sysops the ability to mass delete pages |
Unassigned Under review | Jeroen de Dauw | |
OATHAuth | An HMAC based One Time Password extension, providing two-factor authentication |
Unassigned | ||
OAuth | Allow users to safely authorize another application (Consumer) to use the MediaWiki api on their behalf |
Platform Engineering Team | Tgr (WMF), Ammarpad | |
OAuthRateLimiter | Implements an OAuth hook to add rate limit values to the OAuth JSON Web Token (JWT) |
Platform Engineering Team | PPchelko_(WMF), CAndrew_(WMF) | |
OpenStackManager | Provides a web interface based on MediaWiki, offering a Nova or Swift manager that allows authorized users to create and manage projects, instances, IP allocations, DNS and LDAP entries, and boot images, to run virtual servers hosted on an OpenStack cloud. |
Wikimedia Cloud Services | AndrewBogott (WMF), BDavis (WMF) | |
ORES | Integrates data from the ORES project into the RecentChanges view |
Machine Learning Team/Scoring Platform team | ||
PageAssessments | Stores assessments of pages made by WikiProjects |
Community Tech | Kaldari | |
PagedTiffHandler | Handles TIFF files, including multi-paged images |
Product Infrastructure (SLA details) | ||
PageImages | Stores information about images representing a page |
Web (SLA details)
Pending stewardship review |
||
PageNotice | Displays notices at the top of all pages in a namespace |
To be advised | TTO | |
PageTriage | Facilitates reviewing and approving new pages |
Moderator Tools (Working on Bug Fixes Primarily) | Novem Linguae | |
PageViewInfo | Provides fancy looking graphs of Wikimedia page view data |
Unassigned | ||
ParserFunctions | Enhances parser with logical and string functions |
Content Transform Team | Jackmcbarn, Tim Starling? | |
ParserMigration | Allows users to preview the appearance of articles with the new Parsoid parser |
Content Transform Team | ||
PdfHandler | Handles PDF files like multipage DJVU |
Product Infrastructure (SLA details) | bawolff | |
Poem | Adds <poem> tag for poem formatting |
Unassigned | ||
Popups | Displays popups when users hover over article links (aka. Hovercards) |
Web (SLA details) | ||
ProofreadPage | Helps proofreading of books. |
(Active volunteer) | Thomas PT (Tpt) | |
PropertySuggester | Provides suggested properties when a user tries to add new statements to a Wikidata item. |
WMDE Engineering (contact EMs) | ||
QuickSurveys | Provides in-article quick surveys or external survey to poll readers for opinions. |
Web (SLA details) | Consult Web for large architectural changes or UBN bugs.
|
|
Quiz | Quiz building tool adopted on the Wikiversity |
Unassigned | ||
ReadingLists | Provides an API for storing and retrieving private lists of pages. |
Product Infrastructure (SLA details) | ||
RelatedArticles | Parser function to associate related articles (cf. Wikivoyage) |
Web (SLA details) | ||
Renameuser | Provides a special page that allows user accounts to be renamed |
Unassigned | Marius Hoch | |
RealMe | Allows verifying URLs used on user pages |
(Active volunteer) | Taavi Väänänen | |
RevisionSlider | Visualizes revision history |
WMDE Engineering (contact EMs) | ||
RSS | Displays RSS feeds on a wiki page |
Unassigned | ||
SandboxLink | Provides a link in personal tools to a per-user sandbox |
Unassigned | Matma Rex (Bartosz Dziewoński) | |
SecureLinkFixer | Automatically rewrites URLs to HTTPS if domain always requires HTTPS |
Platform Engineering Team (T200745) | Legoktm | |
Score | Allows rendering of musical scores with en:LilyPond |
Editing team | Alexander Klauer, Ebe123 | |
Scribunto | Provides a framework for embedding scripting languages into MediaWiki pages |
Platform Engineering Team | Tim Starling, Victor Vasiliev, Jackmcbarn | |
SearchExtraNS | Searches extra specified namespaces if no direct match is found |
Unassigned | ||
SearchVue | Vue.js augmentations and improvements to Special:Search |
Structured_Data_Across_Wikimedia | ||
SecurePoll | Extension for elections and surveys |
Huji | ||
ShortUrl | Adds a special page that redirects to an article based on the given base36-encoded ID |
Unassigned Under review | ||
SimilarEditors | Adds a special page for discovering editors with similar edit histories |
Anti-Harassment Tools Team | ||
SiteMatrix | A special page with a matrix of all Wikimedia sites |
Unassigned | ||
SpamBlacklist | Provides a regex-based spam filter |
Unassigned Under review | ||
StopForumSpam | Blocks write actions based upon stopforumspam.com deny lists |
The Wikimedia Security Team | SBassett_(WMF), Reedy, Legoktm | |
SubPageList3 | Provides a splist tag to list the subpages of a page |
Unassigned | ||
SubpageSortkey | Changes the default sortkey to have something to do with the subpages |
Unassigned | Brian Wolff | |
SyntaxHighlight_GeSHi | Allows source code to be syntax highlighted on the wiki pages |
Editing team | ||
TemplateData | Creates and extracts data about templates and their usage |
Editing team | ||
TemplateSandbox | Enables page previews using sandboxed templates |
Unassigned | Jackmcbarn | |
TemplateStyles | Allows for loading sanitized CSS stylesheets from a template |
Content Transform Team | Gergő Tisza | |
TemplateWizard | Adds a popup dialog box for adding template code to wikitext. |
Community Tech | Samwilson | |
TextExtracts | Provides API with plain-text or limited HTML extracts of page content |
Web (SLA details)
Pending stewardship review. |
||
Thanks | Lets users thank other users for individual edits |
Growth team (Needs New Owner) | ||
TheWikipediaLibrary | Notifies users of their eligibility for the Wikipedia Library when they cross the edit count and account age thresholds |
Moderator Tools | Jason Sherman, Susana Cardenas Molinar | |
TimedMediaHandler | Provides integrated support for server side transcoding, WebM, Ogg Theora, Vorbis, Speex and Timed Text |
Readers Engineering | Brion Vibber (Emergency Backup: Structured Data), Michael Dale | |
TitleBlacklist | Blocks the creation of pages matching a regular expression blacklist |
Unassigned | Jackmcbarn | |
TocTree | Adds options for floated or expanded table of contents (cf. Wikivoyage) |
Unassigned | ||
TorBlock | Automatically applies restrictions to Tor exit nodes with access to the wiki's front-door server |
Platform Engineering Team | ||
Translate | Enables in-wiki translation and proofreading |
Language team | ||
TranslationNotifications | Allows translators sign up for translation notifications |
Language team | ||
TrustedXFF | Handles trusted proxy addresses (XFF) |
Platform Engineering Team | ||
TwoColConflict | Provides an interactive two-column edit conflict resolution tool |
WMDE Engineering (contact EMs) | ||
UniversalLanguageSelector | Allows users to select a language and configure its support in an easy way. |
Language team | ||
UploadsLink | Provides a link in personal tools to a user's uploads |
Unassigned | Jdlrobson | |
UploadWizard | Helps people upload media to Commons. |
Structured Data team (details and SLA) | Mark Holmquist | |
UrlShortener | Provides a basic URL shortening service |
Platform Engineering Team | ||
VisualEditor | Enables a rich-text editor for wiki pages (see also Parsoid) |
Editing team | ||
WebAuthn | A module for OATHAuth extension that provides authentication using WebAuthn API
|
Unassigned | ||
WikibaseClient | Client for structured data repository |
WMDE Engineering (contact EMs) | ||
WikibaseRepository | Structured data repository |
WMDE Engineering (contact EMs) | ||
WikibaseCirrusSearch | Implements searching for Wikibase repositories using Elasticsearch |
Search Platform | ||
WikibaseLexeme | Structured lexicographical data |
WMDE Engineering (contact EMs) | ||
WikibaseLexemeCirrusSearch | Implements searching for Wikibase Lexemes using Elasticsearch |
Search Platform | ||
WikibaseMediaInfo | Wikibase extension to manage structured metadata of media files |
Structured Data team (details and SLA) | ||
Wikidata.org | Specific code for Wikibase as running on Wikidata.org | WMDE Engineering (contact EMs) | ||
WikidataPageBanner | Adds pagewide banners at the top of pages in specified namespaces on a wiki. |
Web (SLA details) | ||
WikiEditor | Provides an extendable wikitext editing interface and many feature-providing modules |
Editing team | Derk-Jan Hartman | |
wikihiero | Enables the use of hieroglyphs with additional syntaxes |
Unassigned | Max Semenik | Jdlrobson |
WikiLove | Makes it easy to add positive feedback to user talk pages |
Unassigned | Jdlrobson | |
WikimediaApiPortalOAuth | The WikimediaApiPortalOAuth extension is designed to connect the API Portal with the OAuth server on Meta-Wiki. It provides a user interface to create and manage OAuth 2.0 clients. | Platform Engineering Team | Timo Tijhof | |
WikimediaBadges | Default themes to display badges on Wikimedia projects |
WMDE Engineering (contact EMs) | ||
WikimediaEditorTasks | Task generation, storage, and API service for microcontribution suggestions |
Content Transform Team | ||
WikimediaEvents | Event instrumentations and wiring for Wikimedia Foundation sites |
Performance Team | See OWNERs.md file for individual owners of each schema.
|
|
WikimediaIncubator | Adds functions meant for Wikimedia Incubator |
(Active volunteer) | Jon Harald Søby (and currently inactive: Robin Pepermans, Hydriz, Ebe123) | |
WikimediaMaintenance | Various WMF-specific maintenance scripts |
Unassigned | Sam Reed | |
WikimediaMessages | Adds Wikimedia specific messages and grammar, as well as Wikimedia specific overrides for license related messages |
Unassigned | Maarten Dammers | |
Wikisource | Community Tech | Tpt | ||
Wikistories | Inuka team | SBisson | ||
XAnalytics | Communicates analytic information for WMF to logging infrastructure |
Unassigned |
MediaWiki skins deployed at Wikimedia Foundation[edit]
- See also: Category:Skins used on Wikimedia and phab:source/mediawiki-config/browse/master/wmf-config/extension-list
Skin | Phabricator tag | Description | Steward | Maintainers | Consultants |
---|---|---|---|---|---|
Vector | #Vector | MediaWiki's default skin since 2010; outcome of the Usability Initiative. The Web team does not triage any tasks for Vector tagged with one of: #Responsive-Vector, #Reading-Web-Local-Wiki-Issues, #MediaWiki-Core-Testing. | Web (SLA details) | ||
MinervaNeue | #MinervaNeue | A mobile-first skin for Wikipedia. | Web (SLA details) | ||
Timeless | #Timeless | A fully featured skin that emphasises both content and editing tools. | Unassigned | Isarra | Jon Robson |
MonoBook | #MonoBook | An old skin from 2004, in grey. | Web (SLA details) | Bartosz Dziewoński | |
CologneBlue | #CologneBlue | An old skin from 2002, in blue. | Web (SLA details) | Bartosz Dziewoński | |
Modern | #Modern | An old, unsupported skin from 2008. | Web (SLA details) | ||
Nostalgia | #Nostalgia | An old, unsupported skin that pretends to be UseMod. Only available on https://nostalgia.wikipedia.org | Web (SLA details) | ||
WikimediaApiPortal | #WikimediaApiPortal | WikimediaApiPortal is a skin for MediaWiki created by the Wikimedia Foundation Platform Engineering Team in 2020 as part of the API Gateway initiative. The skin is designed to mimic the look and feel of conventional developer portals by incorporating header and sidebar navigation elements and following the Wikimedia Design Style Guide. The skin uses the Bootstrap CSS framework, OOUI library, and Mustache templates. The skin was created for use with the Wikimedia API Portal, so some elements of the design such as the site logo and footer are specific to Wikimedia. | Platform Engineering Team | Timo Tijhof |
Libraries deployed with MediaWiki at Wikimedia Foundation[edit]
For upstream libraries that we bundle, see Upstream projects. For other libraries that we publish see doc.wikimedia.org (includes developer dependencies, and projects not used by MediaWiki).
MediaWiki core libraries[edit]
See also the composer.json and foreign-resources.yaml files in MediaWiki core.
Frontend and backend libraries that are published by Wikimedia and bundled with MediaWiki core.
MediaWiki extension libraries deployed at Wikimedia[edit]
Library | Repository | Issue tracker | Steward | Maintainers | Language(s) |
---|---|---|---|---|---|
VisualEditor | Gerrit | Phabricator | Editing team | Ed Sanders | JS |
UnicodeJS | Gerrit | Phabricator | Editing team | David Chan, | JS |
jquery.uls | GitHub | GitHub | Language team | Santhosh Thottingal | JS |
jQuery.IME | GitHub | GitHub | Language team | Santhosh Thottingal | JS |
jQuery.i18n | GitHub | GitHub | Language team | Santhosh Thottingal | JS |
jQuery WebFonts | GitHub | GitHub | Language team | Santhosh Thottingal | JS |
wikimedia/css-sanitizer | Gerrit | Phabricator | Unassigned | originally: Gergő Tisza | PHP |
wikimedia/equivset | Gerrit | Phabricator | Unassigned | originally: Brion VIBBER | PHP |
wikimedia/lucene-explain-parser | Gerrit | Phabricator | Search Platform | PHP | |
wikimedia/textcat | Gerrit | Phabricator | Search Platform | Trey Jones | PHP |
wikimedia/zest-css | Gerrit | Phabricator | Content Transform Team | C. Scott Ananian | PHP |
Upstream projects and libraries[edit]
There are many upstream projects on which MediaWiki, extensions, and/or Wikimedia depend. Some of them were "invented here", as stand-along libraries, or split out as part of the Library infrastructure for MediaWiki project. Some of them are widely-used third party tools to which community members provide improvements or support. Others are merely used with gratitude.
Services and administration[edit]
- See also: wikitech:Category:Services and m:FLOSS-Exchange
Note: If you need immediate help with a systems administration question, please go into the IRC channel #wikimedia-operations connect and find the person currently on Ops Clinic duty" (as listed in the
/topic
).
Component | Description | Code Stewards | Maintainers |
---|---|---|---|
API Gateway | The API Gateway is a service that runs in Kubernetes based on Envoy. The service implements many features central to serving the unified API and the API portal. | Platform Engineering Team | |
Application servers | The app server clusters hosting the Wikimedia Foundation wikis, including their Apache and PHP configuration (such as for portals, redirects, rewrites, etc.) | SRE | Giuseppe Lavagetto, Luca Toscano, Moritz Muehlenhoff |
Add A Link | The Link Recommendation Service recommends phrases of text in an article to link to other articles on a wiki. Users can then accept or reject these recommendations. The services consists of the research/mwaddlink python application and the linkrecommendation service deployed in Kubernetes | Add a Link teams | |
AS Report | Generation of public asoranking monthly dataset and accompanying webpage. | Performance Team | Gilles Dubuc, Timo Tijhof |
Arc Lamp | Collect sample profiles from production traffic using Excimer and aggregate into flame graphs. | Performance Team, SRE Observability | Timo Tijhof |
navtiming | Webperf processor service between Navigation Timing extension and Grafana. | Performance Team, SRE Observability | |
Backup & data recovery management | Backups and recoveries are normally self-served & automated (setting up new backups, generating them, recovering from, but Data Persistence "owns" the setup and maintenance of the infrastructure, and can support people needing help for the centralized setup (using Bacula, MinIO and Python), specially for new, large projects with special needs. | SRE > Data Persistence | Jaime Crespo |
ChangeProp | Change propagation | Platform Engineering Team | |
Citoid | Citoid | Platform Engineering Team | |
Cloud Services | Wikimedia Cloud Services computing infrastructure, the Toolforge hosting environment, and many additional supporting technologies used in the Cloud Services environment. https://wikitech.wikimedia.org/wiki/Help:Cloud_Services_introduction | Wikimedia Cloud Services team | |
Continuous integration | The WMF CI infrastructure, including Jenkins, Zuul and the https://integration.wikimedia.org/ portal. | Release Engineering (as of 2016-09-21) | integration group |
cxserver | cxserver | Language team | |
DNS | Issues relating to the nameserver configuration. | SRE > Traffic | |
Databases | Administration and troubleshooting of Database servers. | SRE > specially (but not only) DBAs. wikitech:MariaDB | |
Etherpad | Anything related to Wikimedia's installation of Etherpad or Etherpad Lite. https://wikitech.wikimedia.org/wiki/etherpad.wikimedia.org https://etherpad.wikimedia.org | SRE > Service Operations | Mark Holmquist, Alexandros Kosiaris, Daniel Zahn |
Extension setup | New extensions to get installed or enabled. Just like 'Site configuration' but more specific. | Release Engineering (as of 2016-09-21) | Sam Reed |
Fundraising Misc. | A catch-all for miscellaneous fundraising-related components not covered by MediaWiki extensions and civicrm. See: https://wikitech.wikimedia.org/wiki/Fundraising | FR Tech | |
Graphite | https://graphite.wikimedia.org/ - a real-time performance graphing system | SRE | |
Gerrit | Issues with Wikimedia's installation of Git/Gerrit.
See: https://wikitech.wikimedia.org/wiki/Gerrit, https://gerrit.wikimedia.org |
Release Engineering (as of 2016-09-21) | |
irc.wikimedia.org | Issues with Recent Changes feeds on irc.wikimedia.org.
For help with Libera Chat IRC (e.g. cloaks or channels), refer to #wikimedia-ops instead or check meta:IRC/Cloaks. |
Data Engineering | |
IRC Bots | Issues with bot tools on Libera IRC that are not in "WM-Bot" or "Wikibugs". Cloak/channel requests etc should go to #wikimedia-ops or to meta. See meta:IRC/Cloaks. | (Active volunteer) | Petr Bena |
ircservserv | Manages IRC channel configuration through declarative files in Git. | (Active volunteer) | Legoktm, Majavah |
Kask | Kask is an opaque key-value data store with a RESTful (HTTP) interface. | Platform Engineering Team | Platform Engineering Team |
Mailing lists | Issues relating to the mailing lists/Mailman.
See: m:Mailing lists/Administration, https://lists.wikimedia.org, https://wikitech.wikimedia.org/wiki/Mailman |
SRE | Ladsgroup, Legoktm |
Mathoid | Mathoid | Platform Engineering Team | |
Media storage | Storage infrastructure for images, videos and other media files from Wikimedia Commons and other wikis. Currently based on Swift. | SRE | Filippo_Giunchedi, Matthew Vernon |
Icinga | [1] | SRE | |
NOC | contains public copies of our configuration files. https://noc.wikimedia.org and https://wikitech.wikimedia.org/wiki/noc.wikimedia.org | Unassigned | |
ORES | ORES / ores.wikimedia.org | Scoring platform team | |
Phabricator | Configuration of Wikimedia's Phabricator installation. | Release Engineering | Andre Klapper, and administrators |
Phatality | OpenSearch Dashboards plugin to easily associate errors with Phabricator Tasks. | Ahmon Dancy, Brennen Bearnes, Cole White, Jaime Nuche | Ahmon Dancy, Brennen Bearnes, Cole White, Jaime Nuche |
php-excimer | Low-overhead sampling profiler and interrupt timer. | Performance Team | Tim Starling |
php-luasandbox | Safely execute untrusted Lua 5.1 code. | Platform Engineering Team | Tim Starling |
php-wikidiff2 | Fast diff engine. | WMDE Engineering (contact EMs) | |
php-wmerrors | Extended error handling and display. | Performance Team | Tim Starling, Timo Tijhof |
poolcounter | Low-latency mutex deamon to protect against load spikes (Gerrit, Phabricator). | SRE ServiceOps, Performance Team | Tim Starling |
Proton | Render PDF versions of Wikipedia articles. | Content Transform Team | |
PyBal | Automation and monitoring for LVS. | SRE Traffic; and
SRE > Service Ops. |
Valentin Gutierrez, Giuseppe Lavagetto. |
RESTBase | Restbase: Service in front of many other services, i.e. Parsoid, Citoid, Mathoid, Graphoid | Platform Engineering Team | |
RT | https://rt.wikimedia.org - managing the procurement queue. https://wikitech.wikimedia.org/wiki/RT | SRE | |
Snapshots | Snapshots of MediaWiki content provided in datasets for external re-use.
https://dumps.wikimedia.org https://wikitech.wikimedia.org/wiki/Dumps WMF Projects/Data Dumps |
Platform Engineering Team, WMCS, WMDE Engineering (contact EMs) | Ariel Glenn, Hydriz |
Traffic layer | Infrastructure for global traffic routing between data centers and the CDN, including TLS encryption and HTSTS (formerly SSL). | SRE > Traffic | |
Technical Blog | The Wikimedia Tech Blog, a WordPress installation (hosted by Automattic.com). Source code | Wikimedia Developer Advocacy Team | |
Thumbor | Thumbnail service for Wikimedia wikis, especially rendering of SVG files (which represents the majority of thumbnail-related configuration requests and upgrades). | Unassigned | TheDJ? |
Vagrant (mediawiki-vagrant) | Virtual environment for bootstrapping MediaWiki development | Release Engineering (as of 2016-09-21) | |
VRT System | The platform used for the Volunteer Response Team, historicaly based on the OTRS software. | SRE > Service Operations | User:Madman, Peter Gervai |
wikibugs IRC bot | Announces changes to Phabricator tasks on IRC - https://wikitech.wikimedia.org/wiki/wikibugs | Legoktm, Valhallasw | |
Wikimedia Portals | Wikimedia Portals | Web | JDrewniak |
XHGui | Graphical interface for PHP profiling data captured by WikimediaDebug. | Performance Team, SRE Observability. | |
Sanitarium | The redaction process ("redactatron") that hosts and prepares production databases such that they can safely replica public information to Wikimedia Cloud Services. | SRE Data Persistence | (Jaime Crespo knows the code, but does not maintain it ATM) |
varnishkafka | Aggregate and transport in-memory logs from all Varnish frontend CDN nodes into Kafka for offline processing. | SRE > Traffic. | Valentin Gutierrez |
wikimediafoundation.org | https://techblog.wikimedia.org/, a WordPress install hosted by Automattic.com, https://blog.wikimedia.org. Source code | WMF Communications Team | |
Wikitech wiki | Provides documentation related to the technical projects and infrastructure maintained by the Wikimedia Foundation - https://wikitech.wikimedia.org, https://wikitech.wikimedia.org/wiki/wikitech | Wikimedia Cloud Services team | |
Zotero translation-server | Service that is in support of the citoid service. | Editing team |
Data Engineering[edit]
Component | Repository | Issue tracker | Steward | Maintainers |
---|---|---|---|---|
Event Metrics | GitHub | Phabricator | Data Engineering | MusikAnimal, Samwilson, HMonroy |
Dashiki | Gerrit | Phabricator | Data Engineering | Dan Andrreescu |
Wikistats 2 | Gerrit | Phabricator | Data Engineering | Dan Andrreescu, Marcel Ruiz Forns |
Refinery and Datasets | Gerrit | Phabricator | Data Engineering | Data Engineering Team |
Hadoop Cluster | Gerrit | Phabricator | Data Engineering | Data Engineering Team |
Airflow | Gitlab | Phabricator | Data Engineering | Data Engineering Team |
DataHub | Gerrit | Phabricator | Data Engineering | Data Engineering Team |
Event Platform | Gerrit
(multiple; check docs) |
Phabricator | Data Engineering | Andrew Otto |
Misc[edit]
Component | Repository | Issue tracker | Steward | Maintainers | Note |
---|---|---|---|---|---|
Wikipedia Android app | GitHub | Phabricator | WMF Mobile Apps team | ||
Wikipedia for iOS | GitHub | Phabricator | WMF Mobile Apps team | ||
MediaWiki config at WMF | Gerrit | Phabricator | Release Engineering (as of 2016-09-21) | Sam Reed | MediaWiki configuration of Wikimedia Foundation sites. |
MediaWiki interwiki map at WMF | Gerrit | Phabricator | Unassigned | This, that and the other |
Other areas of focus[edit]
(Not all of them fit in current projects.)
- User experience, user interface and visual design: the Wikimedia Design group members and others
- Site performance (speed and consistency of responses): Wikimedia Performance Team
- Multilingual aspects: Nikerabbit and others.
See also[edit]
- Upstream projects
- Code Stewardship
- https://doc.wikimedia.org: includes libraries Wikimedia publishes, developer dependencies, and projects not used by MediaWiki.
- Gerrit's list of MediaWiki group members (core developers with +2 on all MediaWiki repositories).
- https://www.openhub.net/p/mediawiki/contributors can be useful to see which developers are active.