Name: Amrit Sreekumar
Time zone: UTC +5:30(IST- India)
Location: Kerala, India
Typical working hours: Weekdays 5PM-11PM, Weekends : 10AM-10PM
Improvements to ProofreadPage Extension and Wikisource
This project aims in the improvement and enhancement of the ProofreadPage Extension and Wikisource, through important bug fixes that are left as backlog and implementation of significant features that would make it more user-friendly. This will be done, so that the extension and Wikisource become easier to use and so that they are raised to the contemporary Mediawiki standards.
Mentor: Yann Forget
Deliverables and Core Objectives
1.Enhancement of ProofReadPage extension and Wikisource
- Creation of an auto-validation for specific user-groups: At present, there is no option for specific user groups who are related to or have good knowledge about the transcriptions to validate it when they are uploaded to proofread. Here the implementation of the auto-validation feature will solve the problem.
- Load a higher resolution scan image when zooming in: In the Page: pages editing interface, when the user is zooming in, loading a higher resolution image would make the texts of scans far clearer and hence easier to read. This will be done as a part of enhancement ProofReadPage extension.
2. Updating and upgrading to OOJS
- Converting the zoom feature to OOjs: The zoom feature in ProofReadPage is currently using a jQuery UI widget, this will be migrated to OOjs so as to improve the code quality and reduce the bloat by choosing specific libraries.
- Converting Index: Pages editing form to OOjs: This conversion will increase the code quality and match the current standards of MediaWiki.
3. Addition of features to Wikisource that would make it more user-friendly
- Implementing page transclusion into the VisualEditor: One of the most difficult task in Wikisource is Transclusion, especially for non-computer savvy people. Hence this process will be integrated as a feature to the VisualEditor with a better UI.
- Creating DjVu files with IA-Upload: The implementation of this feature that would allow the direct production of DjVu files through an IA-Upload. Hence making it easier and more reliable.
Deliverable-1: Enhancement of ProofReadPage extension and Wikisource
- To give the admin a privilege to involve specific user-groups who could validate the transcriptions, that have been uploaded to proof-read. This specific feature will be implemented in such a way that the admin could bring in any number of users to validate his own work. The present implementation does not allow this feature, and the users who may not be related to this need to pulled for validating the same.
- Then the code in Page: pages editing interface will be changed in a way so as to accommodate a higher resolution image that could be scanned in so that the user could see it much clearer when zoomed in. At present this feature is not implemented and hence some text may appear hard to read when scanned in.
Deliverable-2: Updating and upgrading to OOjs
- The Index: Pages editing form will be coded into OOjs UI, according to the Mediawiki code quality standards. This will involve an overall change from the currently implemented code to OOjs UI.
- The ProofreadPage zoom feature will be migrated from the existing jQuery UI widget to OOjs.
Deliverable-3: Addition of features to Wikisource that would make it more user-friendly
- Create a User Interface in VisualEditor and add the feature for transclusion into it, so that users can directly transclude documents with a click of a button, making it easier and much more reliable than previously how it was. This will be a jump from the existing process of transclusion, that is tedious for a certain non-computer savvy section of users.
- To replace the 2-step procedure for importing DjVu files used in Wikisource to commons, and make it possible for IA-Upload to directly produce DjVu files. This would make it easier and more reliable as it will not involve the 2-step process going through Internet Archive and then uploading the file that is currently implemented.
|Tasks to be completed||Timeline|
|Community bonding period:Understand the code and learn to work with the ProofReadPage extension and Wikisource. Learn to work with OOjs for the implementation of features and conversion of Index: Pages editing form.||May 5th to May 29th, 2017|
|Complete the first task listed in Deliverable-1: to create the auto privilege feature for different users to validate transcriptions.||May 31st to June 14th, 2017|
|Updating the code in Page: pages editing interface, so as to accommodate a higher resolution image (Task-2 in Deliverable-1)||June 15th to June 25th, 2017|
|Phase-1 evaluation||June 26th 2017|
|Migrating the zoom feature mentioned in Deliverable-2 to OOjs.||June 27th to July 10th 2017|
|Converting Index: Pages editing form to OOjs, testing and documentation of the code.||July 11th 2017 to July 27th, 2017|
|Phase-2 evaluation||July 28th, 2017|
|Create the design for the feature the VisualEditor UI, mentioned in Deliverable-3 and add it to the same.||July 29th to August 7th, 2017|
|Integrate the feature for transclusion to the VisualEditor after developing it. Test and document the feature.||August 8th to August 15th, 2017|
|Implementation of feature that allows to Create DjVu files with Internet Archive Upload||August 16th to August 23rd, 2017|
|Final tests, bug fixes and documentations.||August 24th to August 28th, 2017|
|Final submission||August 29th, 2017|
I am Computer Science undergrad from Amrita School of Engineering, India in which I am a part of an intra-college FOSS initiative called FOSS@Amrita. I have been working and contributing to MediaWiki for the past couple of months, starting off with fixing bugs in different areas that include different extensions and skins for that matter, which could be found at Gerrit-Amrit. It all started with a hackathon conducted by The Wikimedia Foundation at our college from which I first dealt with the code-base of MediaWiki. This has provided me the platform to develop my coding skills, which helped me develop some small but useful things and help out others who are enthusiastic about programming.
My aim is to keep contributing to OSS, become a better coder and dedicate my time to help others coming up in the field, just like how I was helped and mentored by many as a newbie.
Operating Systems : Linux, Windows
Version Control System: Git, Gerrit