=Student Profile=
**Name**: Amrit Sreekumar
**Email**: amrit.sreekumar@gmail.com
**IRC**: amrits
**Blog**: https://amritsreekumar.wordpress.com/
**Github**: [[ https://github.com/amritsreekumar | GitHub-Amrit ]]
**Gerrit**: [[ https://gerrit.wikimedia.org/r/#/q/amritsreekumar | Gerrit-Amrit ]]
**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=
==Synopsis==
**This project aims in the general improvimprovement 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, through important bug fixesso that the extension and upgradation of various significant features and pagesWikisource become easier to use and so that they are raised to the contemporary MediaWwiki standards.
Mentor: [[ https://phabricator.wikimedia.org/p/Yann/ | Yann Forget ]]
==Deliverables and Core Objectives==
**1.Fix bugs that are backlog **
The ProofReadPage extension in MediaWiki and Wikisource has significant amount of bugs that are backlog, this includes the bug listed in the task T67231, and several more outside the task.The important bugs that are related to the ProofReadPage extension listed in phabricator will also be analyzed and fixed
**2. Updating and upgrading to OOJS**
The zoom feature in ProofReadPage is currently using a jQuery UI widget, this should be converted to use OOjs so as to improve the efficiency. The Index: Pages editing form too will be migrated to OOjs, which will increase the code quality and match the current standards of MediaWiki.
**3. Enhancement of ProofReadPage extension and Wikisource **
The necessities such as T51482 in the ProofReadPage extension and T153124 in Wikisource will be coded in, and anything listed of high priority will be worked on.Enhancement of ProofReadPage extension and Wikisource**
==Implementation==
**Community bonding period:**
- Understand the code and learn to work with the 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.
- Learn to work with OOjs for the implementation of features and conversion of Index: Pages editing form**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**
- Get used to the community and talk to the people who have contributed for the same**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.
**Deliverable-1: -**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**
- Fix the important bugs related to ProofReadPage extension done and get the task T67231 fixed,**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. after understanding the code-base used in the ProofReadPage extension and learning to work with Wikisource during the community bonding perioThis 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.
**Deliverable-2: **==Implementation==
**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.
- To start coding in OOjs according to the Mediawiki code quality standards, and get the tasks T153120 and T146160 done using the same. After the coding part is done, the next task will be to upload the code for review and then debug.hen 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.
**Deliverable-2: Updating and upgrading to OOjs**
**Deliverable-3: - First the Index: Pages editing form will be coded into OOjs UI, according to the Mediawiki code quality standards and then 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**
- Once the major bugs are fixed and the required pages and features are built using OOjs.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.
- Now the Enhancement of ProofReadPage and Wikisource by adding necessary features and options can be done.
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.
== Timeline ==
| **Tasks to be completed **|**Timeline**|
|**Community bonding period:** Get in touch with the communityUnderstand 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, learn the code-base and work on different bugs|May 5th to May 29th 2017|
|Complete the tasks listed in **Deliverable-1:** in the one month of coding time.|May 31st to June 25thfirst 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|
|Cod|Migrating the listed taskszoom feature mentioned in **Deliverable-2** usingto OOjs. |June 27th to July 2110th 2017||
|Migrating the zoom feature mentioned in Deliverable-2 to OOjs.|
|**Debugging the written code**|July 22ndJune 27th to July 2710th 2017|
|**Phase-2 evaluation**|July 28th, 2017|
|Enhance the features listed in **Deliverable-3**|July 29th to August 21stCreate the design for the feature the VisualEditor UI, mentioned in **Deliverable-3** and add it to the same. |July 29th to August 7th, 2017|
|**Final changes and touches**|Integrate the feature for transclusion to the VisualEditor after developing it.|August 22nd8th to August 28th15th, 2017|
|**Final submission **|August 29thImplementation of feature that allows to Create DjVu files with Internet Archive Upload|August 16th to August 23rd, 2017|
|**Final changes and touches**|August 24th to August 28th, 2017|
|**Final submission **|August 29th, 2017|
==About me==
I am a FOSS enthusiast and Computer Science undergrad from [[https://www.amrita.edu/ | Amrita School of Engineering ]], India]] in which I am a part of a localan intra-college FOSS clubinitiative called [[ http://foss.amrita.ac.in/ | FOSS@Amrita ]]. I have been working and contributing to MediaWiki for the past couple of months, it all started with a hackathon conducted by The Wikimedia Foundation at our college from which I dealt with the code-base of MediaWiki and then started offstarting off with fixing bugs in different areas that includes different extensions and skins for that matter, which could be found inat [[ https://gerrit.wikimedia.org/r/#/q/amritsreekumar | Gerrit-Amrit]]. It all started with a hackathon conducted by The Wikimedia Foundation at our college from which I first started dealing with the code-base of MediaWiki. This has provided me the platform to develop my coding skills, which helped me codedevelop some small but useful things and help out others who are enthusiastic about programming.
My aim is to keep working as an active FOSS membercontributing 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.
==Skills Possessed==
**Web Development**: PHP, HTML, JavaScript, MySQL
**Operating Systems **: Linux, Windows
**Version Control System**: Git,Gerrit
**Frameworks**: Bootstrap