Google Summer of Code’19 Final Post

Vanshika Arora
Aug 24 · 5 min read

Project Synopsis (Link)

About the App

The Wikimedia Commons Android app allows users to upload pictures from their Android phone/tablet to Wikimedia Commons. Wikimedia Commons accepts only freely licensed media files. Users can upload images and then add various tags specific to them such as category, title, description, and license. Also Wikimedia Commons has won the “Coolest Tool” award at Wikimania 2019 in the Mobile category.

About the Project

The project aims to move towards Structured Commons. The plan is to modify the current procedure of media details in Upload, Search and in Explore in accordance with the Structured Commons property table. Prime features of Structured Commons include Captions and Depictions(multilingual and localised). The feature aims to use captions and Depictions while Uploading, Searching or for showing Media. As specified here.

Goal of the Project

Wikimedia Commons’ goal is to make media about a wide array of topics available to the whole world. Categories are used to help people find content, but unfortunately category search is only in English, making Commons less useful for 80% of the world. The solution to this is Structured Commons, which allows people to seamlessly search for images about particular topics in any language, and see media information in that language too.
While the Commons website has slowly begun implementing Structured Commons, this GSoC has made the Commons app a reference of what Structured Commons is meant to be:

  • Search for media using one’s native language
  • List media using native captions instead of technical filenames, only reverting to English if no caption is available in the user’s native language.

Features developed in this GSoC have sparked ideas in other projects, with enhancement tickets being created to replicate these features on the Wikidata and Commons websites.

Work Summary

Project Title: Add Structured Commons support to Commons Android app

The work mainly centred around introducing core features of Structured Commons(Captions, Depictions) in Wikimedia Commons App

Captions in Wikimedia Commons:

Captions are a feature part of Structured data. They are meant to store short, multilingual descriptions about files
This is a replacement of the previously used titles for images (titles were not multilingual)
Also now captions replace the previous convention of using title for filename

  • At the time of Upload, title of image has been replaced with multilingual captions (This is an improvement over title as title wasn’t multilingual and doesn’t provides enough description of the image)
  • Localised Captions are shown in media details for all the images that have captions
  • Captions(localised) are available for all media searches in explore, they are shown on the image thumbnail instead of previously used file name

Depictions in Wikimedia Commons

Depicts is a feature part of Structured data. Multiple Depictions can be added for an image just like categories.
However unlike categories depictions is multi-lingual

  • At the time of Upload now users are asked to enter “What does the image depicts?”. Several search results are shown(with thumbnail) on the basis of what the user has entered. They can select any depiction amongst the list of available depictions
  • Localised depictions are shown in media details of all the images of Wikimedia Commons
  • Search via depictions is also available in Explore where depictions in any language can be used to search for the media
  • Search for parent classes and child classes of depictions are also added to the search feature in Explore. While searching an image the user gets three types of result (each separated into different fragments) — Media, Parent Classes, Sub Classes(of the depiction)


  • Title replaced by Multilingual Captions
Title replaced by Multilingual Captions
  • Adding Depictions before Uploading image in any language (the preview here shows depictions searched in Hindi)
Adding Depictions before Uploading image in any language (the preview here shows depictions searched in Hindi)
  • Items are available along with categories for each image in Explore
Items are available for each image in Explore
  • List of Items available in Explore (this feature works on every language, and shows depictions in User’s locale)
  • Clicking on any Item shows Media, Parent Classes and Sub-classes associated with the item (classes available in user’s locale)
Clicking on any Item shows Media, Parent Classes and Sub-classes associated with the item
  • Media details showing Captions and Depictions (in user’s locale)
Media details showing Captions and Depictions (in user’s locale)

Quick Links

Final Summary

This is the last but one Week of my GSoC’19 journey. It has been an amazing Experienced to work under such highly experienced Mentors. I have learned a lot over this summer, most important among them are — Testing, Code Quality, Unit tests, Kotlin, Retrofit, Common practices for writing code and Documentation

Thank you, mentors — Nicolas Raoul, Ashish Kumar for your patience and help throughout this journey.

Let’s connect on LinkedIn, Twitter and GitHub.

Vanshika Arora

Written by

SDE Intern’19 @Microsoft | GSoC’19 @Wikimedia | Android Developer | Blogger at MindOrks | Open source Contributor | Username(Github &LinkedIn)— vanshikaarora

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade