Wikimedia Foundation

Your OpenVeda Playbook

Wikimedia Foundation Logo

OpenVeda Playbook: The Wikimedia Foundation

The definitive encyclopedia for contributing to the engine behind Wikipedia. Your journey from newcomer to core contributor starts here.


1. The "Why": Your Code on a Global Landmark

  • The Mission: To empower and engage people to collect and develop educational content under a free license and disseminate it globally. You are building the infrastructure for free knowledge.
  • Your Impact: Your code will run on one of the world's top 10 websites, serving over 18 billion page views per month. The scale is astronomical.
  • Why it's a Career Supercharger: A merged patch in MediaWiki is a globally recognized badge of honor. It proves you can navigate a massive, complex, and mission-critical codebase. It's a GSoC powerhouse that signals technical rigor and patience.

2. The "What": Tech Stack & Architecture

  • Core Backend: PHP (Modern, using Composer), Python (for services & ML), Node.js (for services).
  • Core Frontend: JavaScript (ES6+), Vue.js (for modern UIs), jQuery (in legacy code).
  • Mobile Apps: Java & Kotlin (Android), Swift (iOS).
  • Infrastructure: MariaDB, Elasticsearch, Cassandra, Kafka.
  • Critical Tools:
    • Version Control: Gerrit (NOT GitHub for code review).
    • Task Tracking: Phabricator (phabricator.wikimedia.org).
    • Dev Environment: Docker is the standard.

3. The "How": Your Complete Onboarding Journey

3.1: Immerse in the Community

  • Primary Channel (IRC): This is where real-time help happens. Be patient and polite.
    • For Newcomers: #mediawiki on Libera.Chat.
    • General Dev: #wikimedia-dev on Libera.Chat.
    • Web Client: Libera.Chat Web Client.
  • Secondary Channel (Mailing List): For deep discussions.

3.2: Create Your Accounts

  1. Wikimedia Developer Account: Create one here. This is your passport to everything.
  2. Phabricator: Log in to phabricator.wikimedia.org with your dev account.

3.3: The Foolproof Environment Setup

  • The Goal: Get a running, local version of Wikipedia on your laptop.
  • The Path: MediaWiki-Dev Docker Image.
    1. Install Docker & Docker Compose.
    2. Clone: git clone https://gerrit.wikimedia.org/r/mediawiki/devenv.git
    3. Enter: cd devenv
    4. Launch: docker-compose up -d
    5. Wait. It will download many large images. This can take 10-20 minutes.
    6. Access: http://localhost:8080.
  • Official Guide: MediaWiki-Dev Docker Guide.
  • Troubleshooting: The #1 issue is a port conflict on 8080. The #2 issue is not having enough RAM allocated to Docker.

3.4: The Contribution Workflow (The Gerrit/Phabricator Dance)

  1. Find & Claim a Task on the Good First Bugs list. Comment to claim it.
  2. Create a Branch: git checkout -b T12345-description.
  3. Code & Commit: Write your code. Your commit message MUST start with the bug number: Bug: T12345 | A clear summary of the fix.
  4. Submit for Review: Install git-review (pip install git-review). Then run git review -R.
  5. Engage in Review: This is the most important part. You will get feedback on Gerrit. Be responsive, be humble, and learn. Push new changes to the same branch and run git review -R again.
  6. Get Merged! Your change will be merged by a core developer after it gets a "+2" approval.

4. GSoC History & Focus Areas

  • Historical Focus: Wikimedia is a GSoC staple. Past projects have focused on improving the mobile apps, building new features for the VisualEditor, fighting vandalism with AI/ML tools (ORES), and improving performance.
  • What Mentors Look For: They value persistence. They want to see that you have already made a few small, successful contributions before you apply for GSoC. Your Phabricator history is your real resume.

5. Key Repositories to Know

  • MediaWiki Core: mediawiki/core (on Gerrit) - The beast itself.
  • Android App: apps/android/wikipedia (on Gerrit)
  • iOS App: apps/ios/wikipedia (on Gerrit)

6. Find Your First Task Right Now


7. The Unwritten Rules (Mentor Insights)

  • Process over Code: Your first contribution is a test of your ability to follow their unique process (Phabricator, Gerrit, commit messages). The code is secondary. Get the process right.
  • Patience is a Virtue: The community is global and volunteer-driven. A review can take a few days. Do not be pushy.
  • Clarity is King: Your comments and commit messages should be so clear that someone in a different time zone can understand your thinking without asking.

Stuck? Get Unstuck. Now.

As the founder of OpenVeda, I'm personally offering free 1-on-1 help sessions. Book a 15-minute slot with me and let's solve your problem together.

Book a Free Session with Ayush