Good first bugs/el

This page provides a list of software bugs and small missing features that have been identified as a good way to get involved with an existing Wikimedia project (not only MediaWiki core and its extensions).

This is one way to start getting familiar with the code in Wikimedia projects.

Note that the tasks linked below do not have assigned mentors. You will be mostly "on your own". We recommend to work on software projects with mentors: Check out the list of software projects that we recommend.

No matter which software project you work on, you must have read the "Suggested reading" section to understand workflow and communication expectations.

If you decide to work on MediaWiki core or MediaWiki extensions, you must have read How to become a MediaWiki hacker to understand the infrastructure and workflow.

Potential tasks to work on
The following sections describe a few example areas in which you can contribute, but you are not limited to these areas!

If the software project uses Wikimedia Phabricator, the upper right corner of a task shows the project that the problem is located in.

This provides you a hint about the Git repository that the code is located in, and about the development team which you could contact if you want to discuss it in a "broader" way (as comments in bug reports should preferably refer to the specific problem described in the report only).

MediaWiki core and extensions
  Wikidata Wikidata is a centralized knowledge base for structured data, such as interwiki references and statistical information. Ask your general development questions on the Wikidata mailing list, the #wikidata IRC channel and on the wiki.

→ Potential tasks for new contributors  Multimedia Ask your general Multimedia development questions on the multimedia mailing list and the #wikimedia-multimedia IRC channel.

→ Potential tasks for new contributors  VisualEditor VisualEditor is MediaWiki's WYSIWYG editor. Ask your general VisualEditor development questions on the wikitech mailing list and the #mediawiki-visualeditor IRC channel.

→ Potential tasks for new contributors  Discovery / Search The Discovery team builds the path of anonymous discovery to a trusted and relevant source of knowledge. Ask your general development questions on the Discovery mailing list and on the #wikimedia-discovery IRC channel.

→ Potential tasks for new contributors  Skins Skins allow users to customize the look and feel of MediaWiki. Basic knowledge of CSS and PHP is helpful. Check the project page in Phabricator for more information on each skin and contact information.

→ Potential tasks for new contributors  Collaboration The Collaboration team mainly works on Notifications, New filters for edit review and Structured Discussions.

Ask questions regarding Global Collaboration team projects on the #wikimedia-collaboration IRC channel.

→ Potential tasks for new contributors  MediaWiki core MediaWiki is the core software which provides basic wiki functionality. It is complex, written in PHP, and some areas might not have clear maintainership. Ask your general development questions on the wikitech mailing list and the #wikimedia-dev and #mediawiki IRC channels.

→ Potential tasks for new contributors  Semantic MediaWiki Semantic MediaWiki is one of the biggest and most popular MediaWiki extensions.

→ Potential tasks for new contributors

Standalone projects
  Pywikibot PyWikibot is a Python-based framework to write bots for MediaWiki.

Ask your general development questions on the Pywikibot mailing list and the #pywikibot IRC channel.

→ Potential tasks for new contributors  Mobile Apps There are numerous applications for mobile devices (Android, iOS) to access Wikimedia wikis.

For Wikipedia: Read the general development information and ask your questions on the Mobile mailing list and the #wikimedia-mobile IRC channel.

→ Potential tasks for new contributors: Android Wikipedia application

→ Potential tasks for new contributors: iOS Wikipedia application

For Commons: Read the general development information and ask your questions on the Commons App mailing list.

→ Potential tasks for new contributors: Android Commons application  Huggle Huggle is a desktop application for dealing with vandalism on Wikimedia projects, written in C++ and QT.

→ Potential tasks for new contributors  Analytics The Analytics team empowers and supports data-informed decision making in Wikimedia. Ask your general development questions on the Analytics mailing list.

→ Potential tasks for new contributors

Cross-project areas
  Documentation These are documentation related tasks across all Wikimedia projects.

→ Potential tasks for new contributors <div style="border: 1px solid #CCC; padding: 1em; box-shadow:0px 2px 2px rgba(0,0,0,0.1);"> Design Fixing design bugs or requests requires existing graphics skills working with a Vector graphics application (e.g. Inkscape). Basic knowledge of CSS can also be helpful for integration. Ask your general development questions on the Design mailing list and the #wikimedia-design IRC channel.

→ Potential tasks for new contributors <div style="border: 1px solid #CCC; padding: 1em; box-shadow:0px 2px 2px rgba(0,0,0,0.1);"> Strings Messages displayed in the user interface often need small corrections to the English text. The source text can only be changed in the code by developers, contrary to translations. Also, many messages are unclear and require better documentation. Missing documentation can also be added by editing the  subpage of the message on translatewiki.net, like all translations, but may require some study of the code to understand what a message is for.

→ Potential tasks for new contributors <div style="border: 1px solid #CCC; padding: 1em; box-shadow:0px 2px 2px rgba(0,0,0,0.1);"> And many more… Still not enough ideas? There are more fields you can explore - Wikimedia has hundreds of projects! Check out the complete list of potential tasks for new contributors:

→ Potential tasks for new contributors

If you have any trouble or specific questions, please ask for help via IRC or feel free to contact Srishti Sethi or Andre Klapper.