GSoC/GCI Archive
Google Summer of Code 2015

Wikimedia Foundation

License: GNU Library or "Lesser" General Public License version 2.0 (LGPLv2)

Web Page:

Mailing List:

We believe that knowledge should be free for every human being. We prioritize efforts that empower disadvantaged and underrepresented communities, and that help overcome barriers to participation. We believe in mass collaboration, diversity and consensus building to achieve our goals.

Wikipedia has become the fifth most-visited site in the world, used by more than 400 million people every month in more than 270 languages. We have other content projects including Wikimedia Commons, Wikidata and the most recent one, Wikivoyage. We also maintain the MediaWiki engine and a wide collection of open source software projects around it.

But there is much more we can do: stabilize infrastructure, increase participation, improve quality, increase reach, encourage innovation.

You can help to these goals in many ways.


  • An enhanced cross-wiki watchlist as an OAuth tool The goal of this project is to develop a enhanced cross-wiki watchlist for Wikimedia projects as an OAuth tool which runs on tools. It would support cross-wiki watchlist & notifications as well as features like inline diffs (e.g. per request or for all talk pages).
  • Extension to identify and delete spam pages This project involves building a MediaWiki extension that can identify existing spam on pages and then present an admin with options to 'delete', 'mark for review' or 'mark as not spam' (among other possible options) the pages/edits that the extension lists out. The extension would also remember pages/edits earlier marked as 'not spam'.
  • GraphData extension for VisualEditor This project aims to develop an extension for MediaWiki VisualEditor which will allow users to edit Vega-ready JSON strings from a tailored UI, without having to open up the page source, thus reducing user-error risk when creating and editing graphs.
  • GSoC'15/Outreachy Proposal for Unified language proofing tools integration A lot of the people who contribute to Wikipedia or want to do so might not be as comfortable with the source wiki editor. Visual Editor provides a brilliant WYSIWYG interface, and with language proofing it should reduce the number of grammatical and spelling errors which are often overlooked in several re-edits. So far it does not have an integrated tool for language proofing. There are isolated tools in some wikipedia communities but there is no aggregated uniform implementation.
  • Implement Flow support in Pywikibot Pywikibot currently lacks support for Flow, a discussion system being implemented as a MediaWiki extension. When Flow is deployed, bots will need to access and update information on Flow pages. Pywikibot is a popular bot framework used with MediaWiki sites, so implementing Flow support is a must. This project involves creating Python classes representing Flow objects, using the MediaWiki API to interface Pywikibot objects with Flow data, and creating extensive test suites to ensure stability.
  • Implement OAuth Support for Pywikibot This project is focusing on implement OAuth support for Pywikibot, which is a collection of tools that automate work on MediaWiki sites. OAuth will offer a more reasonable, safe and robust way to identity authentication for users who use Pywikibot to maintain their MediaWiki sites.
  • Newsletter Extension for Mediawiki Wikimedia projects and developers could use an extra hand when it comes to communicating the recent activities to the community as well as to the outside. The best possible solution we have at hand is a Newsletter, which brings together all the relevant news/updates at one place. This is where the idea of a newsletter extension comes in, allowing any number of wikis to install the feature and deliver the latest updates to users through a subscription.
  • WikidataPageBanner extension for wikivoyage Proposal to render wikivoyage article banners using an extension