Name: Priyanshu Varshney
Github Profile: https://github.com/priyanshuvarsh
Institute: Indian Institute of Technology Indore
Location: Indore, India
Time Zone : UTC +05:30
Typical Working Hours : [4 pm to 9 pm], [10 pm to 1 am] UTC +5:30
Mentors: @Yaron_Koren Erik Biegert @yashdeep97
I was introduced to Wikimedia last year by my college senior and I got to know about its effort to share information and knowledge with the world. I started looking deeper into MediaWiki and started writing code for which I had an incredible time working on the micro tasks and received a lot of guidance and feedback on my work from the mentors, and it was a great learning experience. Contributing to this project would be a great opportunity for me to be a part of this amazing community and develop features that will possibly be used by millions of people.
===Features and Implementation
**1. Allows users to edit multiple template calls simultaneously using a spreadsheet-like interface**
Create a special page that will allow a user to edit all the calls to a particular template with date fields. This Calendar interface will contain dates and each cell corresponds to various template calls for various events.
**2. Get ideal input type for each parameter**
Add support to get the input type for each template parameter(date, date-time) and display it accordingly in the calendar interface.
**3. Provide support for renaming pages**
Explore the page moving mechanism used in MediaWiki either by using functions from Special: MovePage or API: Move.
**4. Develop similar interface for Coordinates fields which will allow users to create and drag around markers on a map**
| **Period** |**Assignment or Task to solve**|
|May 6 - May 26| **Community bonding period.** Get more familiar with the code base by fixing other issues in Page Forms. Become more active on IRC, Phabricator, and Gerrit, communicate with mentors, community members, and other participants and get to know more about their projects. |
|May 27 - June 13|Create **Special Page** for Calendar Interface to edit template calls: Develop code to set respective date cell(i.einclude FullCalendarJS library and integrate it into the codebase. a cell in the calendar) implement save and edit logic.|It would be named as PF_FullCalendar.js|
|June 14 - June 23|Develop code to get the **ideal input type** and discuss it with mentors for a popup form for the events which would be similar to the single instance of the multiple instance template. Get ideal input type for the popup form |
|June 24 - June 28|**Phase I Evaluations**|
|June 29 - July 3|**Improve Interface:** Check for scalability and implement for morea large data sets and adjustr number of events. Implement Drag-N-Drop logic for any delays.|the events on the calendar |
|July 4 - July 15|**Develop logic for adding new events:** Write code to add newResizing logic for the events usingthrough the improved Calendar Interfacemonth and Time Grids. Testing the new UI and fix bugs.|
|July 16 - July 2126|**Functionality to rename evento add support for Token and Combobox input types:** Fix bugs. Simultaneously develop the functionality to rename the new or existing events|
|July 22 - July 26|**Phase II Evaluations**|
|August 1 - August 2|Develop similar interface for pages with Coordinates fields which will allow users to create and drag around markers on a map 13|Build the code and submit regular patches on the Gerrit. Improve the date and datetime handling logic|
|July 27 - August 25|Buffer time: Fix any issues left and make sure the documentation for code written is thorough. Improve the code structure and get rid of redundancy in the code|
|July 27|August 17 - August 25|Buffer time: Fix any issues left and make sure the documentation for code written is thorough. Improve the code structure and get rid of redundancy in the code. Try to add support for other input types like -rating, tree etc |
|August 25 - September 2 |Mentors submit final student evaluations|
|September 3|**Final results of Google Summer of Code 2019 announced**|
I’ll use GitHub to publish my source code. I’ll communicate my weekly progress with my mentors via email. In case I get stuck, I’ll reach out to them via email, IRC and hangout.
Tell us about a few:
I am an undergraduate, third-year student, pursuing a Bachelor of Technology in Electrical Engineering from Indian Institute of Technology, Indore. Despite my circuital branch, my huge interest in programming allowed me to take online programming courses in OOPS, Web-Development, Machine learning. I have participated in various hackathons bagging good ranks in all of them.
My GitHub link is [[ https://github.com/priyanshuvarsh | this ]]. Some of my major projects are:
# [[ https://github.com/priyanshuvarsh/Videofy | Videofy ]] It's a tool that takes an image based content article and automatically generates a motion video out of it. This was made in WittyHacks hackathon organized by WittyFeed. My team secured the first rank in this hackathon.
# [[https://github.com/priyanshuvarsh/crop | Crop]] I made a Mozilla/chrome extension for the **The Telangana Building & Other Construction Workers Welfare Board ** that takes the image from the webcam that is used to fill their registration forms. The webcam opens and takes the picture and I provided the feature of cropping the images as per the user requirement.
===Contributions to MediaWiki:
# T188414 : Replace Dynatree JS library with Fancytree in Page Forms
# T217518: Page Forms: Fix "tree" input type for Foreground skin
# Rating type for Cargo Extension (To be updated, still in progress) Link : [[ https://gerrit.wikimedia.org/r/#/c/mediawiki/extensions/Cargo/+/497847/ | here ]]
===Any Other Info
Mockups to be updates