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.
- 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.