MediaWiki is a free server-based software, licensed under the GNU General Public License (GPL). It’s designed to run on a large server farm for a website that gets millions of hits per day.

MediaWiki is an extremely powerful, scalable software and a feature-rich wiki implementation that uses PHP to process and display data stored in a database, such as MySQL.

Pages use MediaWiki’s wikitext format so that users without knowledge of HTML or CSS can edit them easily.

When a user submits an edit to a page, MediaWiki writes it to the database, but without deleting the previous versions of the page, thus allowing easy reverts in case of vandalism or spamming. MediaWiki can manage image and multimedia files, too, which are stored in the filesystem. For large wikis with lots of users, MediaWiki supports caching and can be easily coupled with proxy server software.

MediaWiki is:

  • feature-rich and extensible, both on-wiki and with hundreds of extensions;
  • scalable and suitable for both small and large sites;
  • simple to install, working on most hardware/software combinations; and
  • available in your language.

Prerequisites

  • Kubernetes 1.4+ with Beta APIs enabled
  • PV provisioner support in the underlying infrastructure

Get involved

Do you love software freedom and open source communities? Do you like the MediaWiki software, Wikipedia, or any other Wikimedia sites?
Then, contribute your skills here and learn from other contributors. This page will help you get started by providing an overview of areas where you can get involved.

Web APIs

The content of all Wikimedia projects is released under free licenses. Write code to access, remix and grow this immense pool of free knowledge. Follow the tutorial to get started with the API, available on all MediaWiki wikis, and other APIs for content and Wikidata. Other open data sources, including XML and SQL dumps, are also available.

Software Development

Our code is all free and open source. Choose a project, provide a patch, and fix a task!
Wikimedia projects use a variety of languages such as PHP and JavaScript in MediaWiki and its extensions, Lua (in Templates), CSS/LESS (in skins etc), Objective-C, Swing and Java (in Mobile Apps and Kiwix), Python (in Pywikibot), C++ (in Huggle), or C# (in AWB).

Create bots to process content and host your tools on Toolforge. Hack on mobile apps or on desktop applications. Or help Site Reliability Engineering maintain the server configuration.

Testing

Help improve the quality of our projects through automated browser testing and continuous integration. Report your first bug or help with existing bug reports.

Ambassadors

As a Tech ambassador, help other Wikimedians with technical issues, relay Tech News to inform users about what is going to impact them, and join the ambassadors’ group and the mailing list to act as a bridge between developers and your local wiki.

Documentation

English writers can improve the MediaWiki documentation, other essential support pages and, in fact, any page of this website.

Translation

If you are fluent in a language other than English you can join the effort by translating this website and the MediaWiki software.

Support

Help users and developers looking for answers at the support desk or the MediaWiki communication and social media channels.

Design

Help apply the Wikimedia design principles in projects looking for UX feedback.

Meet up

Meet other community members online or in person.

More helpful information

Communication

There are several ways you can get into contact with the Wikimedia community.

  • Feel free to ask your developer questions on https://discourse-mediawiki.wmflabs.org.
  • For real-time communication use #wikimedia-devconnect on IRC (Internet Relay Chat).
  • There are also several e-mail lists for discussion of Wikimedia software. A complete list is available.
  • You can also follow and share Wikimedia news across your social network.
  • You can also subscribe to Tech News to receive a weekly summary on your user talk page of recent software changes, without technical jargon.

Tell us about a new Kubernetes application

Newsletter

Never miss a thing! Sign up for our newsletter to stay updated.

About

Discover and learn about everything Kubernetes

Navigation