Final work product of GSoC’17

It has been one great and challenging ride through the GSoC period through which I got to meet some eminent coders and had a wonderful experience working with the Wikimedia team, who were extremely helpful and responsive at all times. Not to mention the immense amount of learning that had happened over the span of three months, it was indeed a pleasure working on some major issues and resolving it with the help of the Mediawiki community. I am sure to continue contributions to the open source world and The Wikimedia foundation in the coming future.

The project that I had taken initiative to do was based on the general improvement and enhancement of Wikisource and the ProofreadPage extension that was intended to allow easy comparison of text to the original and allow rendering of a text in several ways without duplicating data. The three tasks that I had completed over this span is:

  • Creation of an auto-validation privilege – The task was to implement a privilege that was exclusively accessible only by the admins. This allows them to validate the pages they have proofread (which was not possible, if not for this right). This right proves useful for those running small wikis, as they need not call a third person or someone not related to the topic to validate the proofread page, they can now do the validation by themselves if they possess this right. The task involved the general changes in the extension, implementing some tests and then its documentation all of which can be found in this merged Gerrit-task.
  • Conversion of Index: Pages editing form to OOjsUI – This task was based on the porting Index: Pages editing form, an editing interface implemented in the ProofreadPage extension to edit the pages that are proofread or are to be proofread. The previous code was to be converted to OOjs. Since the procedure was new to me, it was a different experience coding it in, after thoroughly reading the documentations and learning the coding conventions. The result was a working code that implemented a much better looking User Interface and a code much more readable than before. The work done in CSS, PHP, JavaScript and the merged code can be found here at the 2nd Gerrit-task.
  • Migration of ProofreadPage zoom feature to OOjs – Here the job was to completely port the zoom feature implemented in jQuery to OOjs. At first, the task seemed a little challenging, as there were quite some lines of code to be ported and the zoom feature itself was a little complicated. But with the advantage of a well-documented code and the help of my mentor, I was sailing through the task. After the code was wholly converted to OOjs, the code was submitted for review and the necessary changes were made as according to the requirements. The change is yet to be merged as the DOM added is not yet updated to the Gerrit-change.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s