Back to Programs

Web

Wikimedia Foundation

Bringing free educational content to the world

csshtmljavascriptphppython

Participation history

10 GSoC years

2026

8 projects

Official year page

Montage Improvements

The proposal is on the project Montage which is the most used photo evaluation tool under WLM ( Wiki Loves Monuments ). The plan is mainly about...

Wikifile Transfer Enhancement

The current Wikifile Transfer tool is constrained as a single-transfer utility. This creates highly repetitive manual work for contributors migrating...

Gamifying Data Curation on Wikidata

Wikidata currently lacks a strict, universally applied method to differentiate between instances, first-order classes, and metaclasses. This...

Scribe Conjugation Application Development

This project introduces Conjugate, an Android and iOS open-source mobile application that provides a privacy-respecting verb conjugation tool powered...

Enhancing Wikisource Bulk OCR User Controls and Feedback Modal

Wikisource is an online wiki-based digital library operated by the Wikimedia Foundation where volunteers transcribe old books and documents. The Bulk...

GSoC 2026: Programs & Events Dashboard — System-Wide Metrics and Data Downloads - Lakshita Jain

The Programs & Events Dashboard tracks editing activity across thousands of Wikimedia programs, but generating a system-wide picture of that impact...

CampWiz Nxt Redesign

CampWiz NXT is the jury management platform used during Wiki Loves contests to evaluate media submissions, images, audio, and video, uploaded to...

Implement lossless JPG transformations in the Commons Android App

This project is proposed to 1. Prevent the loss in details happening when the user edits, uses the crop/rotate feature when uploading images through...

2024

9 projects

Official year page

Improve InlineComments extension

InlineComments (https://www.mediawiki.org/wiki/Extension:InlineComments) is a relatively new MediaWiki extension that provides a long-missing feature...

Migration towards Manifest V3

Chrome is going to remove MV2 deprecated extensions by June 2024 . The purpose of this project is to successfully migrate towards Manifest V3 while...

Improve searchability and filtering of PageTriage feed

PageTriage is an MediaWiki extension that allows patrollers on the English Wikipedia to track, categorize and deal with problematic new pages. One of...

[Programs & Events Dashboard] Improve system for copying courses from one Dashboard to another

This project aims to enhance the course copying feature present for copying courses across the servers. Currently, when courses are copied between...

Improve upload queue management

The proposal aims to enhance the Commons app by improving upload queue management and modernizing its interface. Tasks will include improving the...

Scribe-Data: Refactor into a Multi-Purpose Wikidata Language Pack CLI Tool

The goal of this project is to transform the Scribe-Data tool into a versatile, multi-purpose Command Line Interface (CLI) tool. This tool will...

Improve the training module creation and update process [Programs & Events Dashboard]

Within this dashboard, the current process of creating and updating training content poses significant challenges to users. Creating new modules...

Scribe-iOS: Add multilingual translation and internationalized interfaces

This project is centered on the Scribe keyboard app for iOS, which is a keyboard for language learners featuring translation and conjugation of...

Lingua Libre v3.0 enhancement and migration

The Lingua Libre v3.0 enhancement and migration project aim to revamp the legacy Lingua Libre website from a wikibase, blazegraph backend to a modern...

2023

9 projects

Official year page

Wiki Education Dashboard: Refactoring and upgrading React

This proposal aims to improve the dashboard's performance and overall code-quality by making a variety of changes to the frontend codebase. this...

GSoC 2023 Proposal: Wiki farm support for Canasta

Canasta is a Docker-based MediaWiki distribution that simplifies the process of setting up a full-featured MediaWiki instance on virtually any...

End-to-end test coverage for Abstract Wikipedia's Wikifunctions

The project idea emphasizes the importance of developing thorough tests that replicate important user journeys within the Wikifunctions platform....

VideoCutTool: Improve the functionality of VideoCutTool

Proposed features to improve VideoCutTool's user experience on the Wikimedia website: 1) Cloud storage to save work, and resume editing from anywhere...

Commons Android app: Make upload more reliable

Wikimedia Commons is an Android app that enables users to upload and view pictures from their Android phone/tablet on the Commons server. This...

Adding a menu to Scribe-iOS application and expanding keyboard languages

Scribe is a keyboard application for language learners. It sources its data from Wikidata. 1. Adding a menu to the application: - Currently, the...

Improve Programs & Events Dashboard UX for Article Scoped Programs

Wiki Education Dashboard is a complex web app for keeping track of contributions to Wikimedia projects. It's widely used by the global Wikimedia...

[GSOC 2023 - Proposal] Improve the functionality of VideoCutTool

VideoCutTool is an open-source, online video editing tool, for videos uploaded on Wikimedia Commons. It is an easy, on-the-go tool, which supports...

GSoC 2023 Proposal: Wikidocumentaries to import images from the web to Structured Data on Commons

The project aims to establish a complete workflow for retrieving media related to a currently viewed topic in Wikidocumentaries from a given media...

2022

7 projects

Official year page

Rewrite the Wikidata Infobox on Commons in Lua

Wikimedia Commons is a multilingual project that hosts over 80 million freely licensed multimedia files, which are available for use on Wikipedia and...

Command-line interface (CLI) for Canasta & Canasta Kubernetes Stack

Command-line-interface for Canasta is designed to make the process of creating and maintaining a Canasta installation. Backing up and restoring the...

Make it easier for contributors to choose pictures for upload on the Commons Android app

1. At the bottom of the picker, there will be two buttons "Upload" to start the Upload Wizard with the selected pictures (replacing the already...

Extending the WikidataComplete plugin for enabling data donations, recommendations, and gamification

Wikidata is one of the largest hosts of open data. Missing or new information needs to be added by community members. Otherwise, the knowledge base...

Modernize JavaScript build process and dependencies for Wiki Education Dashboard

Wiki Education Dashboard (the Rails app that powers Programs & Events Dashboard) is a complex web app for keeping track of contributions to Wikimedia...

Campaigns Retention Metrics Dashboard

Campaigns are content/theme focused activities organized annually by collaborating with many volunteer communities and other government/private...

Edit Request Wizard

This project aims at creating a step-by-step form to help beginners submit a Wikipedia edit request. An edit request is a request for someone to...

2021

10 projects

Official year page

Develop a web based monitoring dashboard to improve and monitor existing database backup inventory processes and improve long term maintainability of existing code

The project aims to build a simple web dashboard/webapp that will display and monitor data and metadata from various database backups that are...

GSOC - Create cypress tests for wikipedia-preview

The Wikipedia Preview acts as a medium that provides Wikipedia content in the form of contextual information to be available on 3rd party sites. It...

Custom Picture Selector

Currently, the image selection for the app is the default Android selector which lets you pick multiple images from the gallery or upload one using...

Add zoom and pan to the Wikisource Pagelist Widget

The Wikisource Pagelist Widget is an OOUI based widget that streamlines the process of creating a pagelist for new (and existing) Wikisource users....

Develop a UserScript/Gadget tutorial on MediaWiki.org similar to Wikipedia:The_Wikipedia_Adventure

User scripts are the JavaScript programs that provide Wikipedia users the ability to customize and change the behavior of their user account....

Add autocompletion to Page Forms spreadsheet-style display

The Page Forms extension provides a spreadsheet-style editing display in two places- In the page Special Pages: MultiPageEdit - Using this user can...

Update the front-page of Wikimedia projects

In this project we want to get to the point where all the wikimedia portals use the same build system and resources. By Using (templates, scripts,...

Gamified Knowledge Base Completion Plugin for Wikibase/Wikidata

Creation of a Knowledge base completion Plugin for Wikibase/Wikidata and a badge service for Wikibase/Wikidata

Upgrade WebdriverIO to the latest version 7 for all repositories

Project Summary Testing of software is important since it discovers defects/bugs before the delivery to the client, which guarantees the quality of...

Retraining models from ORES to be deployable on Lift Wing

The Machine Learning team at the Wikimedia Foundation works with the aim of building ethical ML solutions to help Wikimedia communities and teams in...

2020

14 projects

Official year page

Reduce Bundle Size

The WikiEduDashboard's current bundle size is around 4.3 MB. That is a lot of code that's being downloaded and parsed on the client. The user...

Evaluate WebdriverIO replacements for our browser automation framework

Currently all the frontend automation tests for MediaWiki are written in Javascript using WebDriverIO which uses Selenium under the hood. While...

Improve Wiki Education Dashboard's Error Monitoring

WikiEduDashboard pulls huge data related to a wide range of WikiMedia projects via MediaWiki API, across groups of editors. This scales upwards when...

Media Data Verification Tool

Since Wikimedia Commons introduced structured data to the files hosted on the site, users are encouraged to add structured data to the files....

Implement articlequality and draftquality model for ptwiki and apply insights to models for bs, uk, hi wikis

The current automatic classification system in place for the ptwiki is very naive and simply checks a few if conditions and places articles...

Upgrade WebdriverIO to the latest version for all repositories

MediaWiki uses WebdriverIO, an open-source test automation framework, as it’s primary testing framework. WebdriverIO v6.0 was released just a few...

Remove use of jQuery UI from Page Forms.

jQuery UI is formally deprecated among MediaWiki Developers, but Extension: Page Forms still uses it. So, it would be great to replace it with other...

Creating a page-list editing widget for the ProofreadPage extension

Creating a widget in the ProofreadPage extension using the OOUI library that will help smooth out the experience for new users editing pagelists in...

Detecting reverts and tagging reverted edits

In MediaWiki it is currently very hard to find and filter out edits that were later reverted (i.e. removed) from an article, it is also hard to...

Design and implement a tool to create overlays on pre-rendered offline maps for Internet In A Box

The Internet In A Box is a platform to provide offline access to educational content like Wikipedia slices, medical knowledge, videos, books, maps to...

Add leaderboard based on user's edits using Commons Android app

The Wikimedia Commons Android app allows users to upload pictures from their Android phone/tablet to Wikimedia Commons. Commons is not only the image...

Supporting the ‘maps’ parameter in TemplateData Editor (GUI)

Bringing the 'maps' parameter with its full functionality to the TemplateData GUI editor to make it easier for the average non-technical user to...

Improve the framework to transfer files over the LAN

The transfer method in transfer.py is responsible for copying data from one host to another. This is a highly used function in DB management....

goodbot: a simple, friendly bot for Wikimedia Zulipchat

goodbot is a help-chatbot intended for helping out new applicants of Wikimedia Outreach programs. The bot is designed to be accurate, modular,...

2019

11 projects

Official year page

Tool to Cut Videos in Commons

VideoCutTool will help to trim videos on-the-fly in Wikimedia Commons. Currently, a video in Wikimedia Commons cannot be edited online. They have to...

Create a subpage for statistics and charts related to a hashtag search

There are various Wikimedia projects that are edited by volunteers around the world. Hashtag Search is a tool that allows users to search for uses of...

GSoC 2019 Proposal: Page Forms - add an editable calendar interface

The Forms made using the Page Forms extension for MediaWiki can be used to add and edit template calls in the pages. This project aims to add a...

Make notification counts update without page reload

This project will involve: Updating the notifications count via a polling mechanism. Writing the code and user preference to temporarily display...

GSoC Proposal: Develop code samples in Javascript and PHP for API Modules

This project will be about developing the sample code in two or more programming languages to demonstrate the use of MediaWiki Action API modules. In...

Develop a tool for event organizers to track developer activity

The project is to develop a tool to track the contributions of developers across the platforms like Gerrit, Phabricator and GitHub using the...

Ujjwal Agrawal/ WikiEdu Dashboard Android App

Wiki Edu Dashboard App is an Android client for the Wiki Education Dashboard API to support managing programs, including edit-a-thons, education...

Improve article recommendation pipeline

The article recommendation pipeline consists of many parts. The project aims to improve article recommendation pipeline by solving the various issues...

Proposal for Wikimedia Commons

Add Structured Commons support to Commons Android app

Improve the interface of Special:ViewData in the Cargo extension

The Cargo extension (https://www.mediawiki.org/wiki/Extension:Cargo) defines a page, Special:ViewData, that serves two purposes: (1) to display...

Add Multi-Wiki Support to WikiEduDashboard

WikiEduDashboard is a versatile tool to engage in peer-learning through editing and reviewing the Wiki Articles. Currently, the tracking of articles...

2018

12 projects

Official year page

[#1Lib1Ref] Build a "worklist" tool for campaigns and in-person editing events

In this project, a tool will be developed that will basically enable people to collaborate during campaigns and in-person editing events. It'll act...

Adding 'User' search filters to the existing filter menu

The User filter’s purpose is to display edits made by particular users. It will be added to the main filter panel. Desired features include the...

WikiEducation Dashboard Article Finder Tool

The Wiki Education Dashboard/ Programs & Events Dashboard is a Web Application that helps people organize groups of newcomers to contribute to...

Predict relevance of search results from historical clicks using a Neural Click Model

Click models are algorithmic approaches which help in the ​understanding relevance of documents over a given query by modeling the search queries in...

[Wikimedia Commons app] Allow users to browse Commons from app

About the project This project is aimed at providing an option to browse/search the Wikimedia Commons using the app. Why this feature is needed? ...

[GSoC proposal 2018] Emoji Twitter bot for Commons images from NYPL fork

Wikimedia Commons is a Wikimedia Foundation project and an online repository of images videos and other media files. A Twitter bot is a type of bot...

Feedback on how pictures uploaded to Commons get used: statistics, barnstars, light gamification

This project will be executed in two phases. First phase is sharing feedback about uploaded photos in the form of number of images used in...

Add a spreadsheet interface for modifying multiple pages to the Page Forms extension

The Page Forms extension for MediaWiki is currently used to create and edit pages using an interface made up of forms that simplify the process. The...

Improve the Cargo Special:Drilldown page

The Cargo extension's Special:Drilldown page shows a listing of each table, its contents, and a set of filters, for all the data in a wiki stored via...

[Analytics] Improvements to Wikistats 2.0 front-end

Wikistats is the public statistics website of the Wikimedia Foundation. Its main purpose is to add context and motivate our editor community by...

Improvements for the Toolforge 'webservice' command

This project is about improving the webservice command used by toolforge to start and stop web services. It involves solving bugs and adding features...

Improve Data Explorer on query.wikidata.org

The Wikidata Query Service allows users to run complex queries and ask intricate questions to Wikidata, a free, open and vast knowledge base. My...

2017

7 projects

Official year page

Automatic editing suggestions and feedbacks for articles in Wiki Ed Dashboard

The Wiki Ed Dashboard / Programs & Events Dashboard is a Ruby on Rails + Javascript application that helps people organize groups of newcomers to...

Implement Thanks support in Pywikibot

Pywikibot is a popular framework for writing MediaWiki bots. Thanks is an extension for MediaWiki wikis which is designed to allow users to send...

Glam2Commons (previously Single Image Batch Upload)

The project aims to develop a tool which allows any Wikimedia Commons user to import images to Commons from the online repositories of a number of...

Add a "hierarchy" type to the Cargo extension

This project aims to introduce hierarchy fields in Cargo MediaWiki extension. This project will enhance the capability of MediaWiki by enabling...

Improvements to ProofreadPage Extension and Wikisource

This project aims at the improvement and enhancement of the ProofreadPage Extension and Wikisource, through important bug fixes that are left as...

GSoC17 Proposal to provide enhanced usability for Wikimedia Programs & Events Dashboard managed by Wiki Education foundation.

The Dashboard code runs 2 main projects: 1) The Wiki Education Foundation Dashboard : The use case(scope) for this project is limited to higher...

Adding custom features while Upgrading and updating Quiz extension

Quiz extension is currently used on several WMF projects, such as Wikiversity but has lot of bugs and limited features for users.The project aims to...

2016

6 projects

Official year page

Accuracy Review of Wikipedia

This project aims to provide editors with an easy mechanism to find and review inaccurate content in Wikipedia articles. The aim is to achieve this...

Abhinand GSoC Proposal : Extension for page creating/editing notification

This project aims in developing a MediaWiki extension that provides a much greater range of notification options related to page creation and editing.

Automated Testing and Integration of IFTTT support to Wikidata

This project aims at integrating IFTTT (IF This Then That) feature to the Wikidata extension and extending RSS views and writing Unit tests for the...

List Of Contributors

Listing of contributors to a project is an important feature that must be an integral part of an open source community. Listing of contributors comes...

Improving static analysis tools for MediaWiki

MdeiaWiki-CodeSniffer is a linting tool based on PHP_CodeSniffer. It helps MediaWiki to improve its code quality. This proposal aims to fix existing...

Port catimages.py to pywikibot-core

The aim of the project is to bring to life the catimages.py script from pywikibot-compat. This involves heavy refactoring of the script to make it...