**Profile Information**
Name: Angel Sharma
Github: [[https://github.com/fillingtothemomo}| fillingtothemomo]]
Gmail: rockingpenny4@gmail.com
Phabricator: [[https://phabricator.wikimedia.org/p/Rockingpenny4| Rockingpenny4]]
Gerrit: rockingpenny4
Location: Mathura, India
Time Zone: IST(UTC+5.30)
Working hours: 3:00 PM to 3:00 AM (IST)
**Synopsis**
//InlineComments (https://www.mediawiki.org/wiki/Extension:InlineComments) is a relatively new MediaWiki extension that provides a long-missing feature for MediaWiki: the ability to do inline annotation on pages, in the manner of Google Docs, Confluence and other content-management systems. //
The extension works fairly well but some improvements can be added like adding user mentions to ping them in the comments, making sidebar creation more neutral and displaying correct date/time on adding a new comment with reloading the page.
**Deliverables**
- Add user mentions, i.e. selecting a user or users to "ping" about the current discussion by typing "@" and then selecting a username from the dropdown (T355942)
- Make sidebar creation more skin-neutral - currently, the "sidebar" in which comments are displayed is created on somewhat of a skin-by-skin basis; it would be good to have the code handle all skins in a standard way, via CSS and/or JavaScript (T355948)
- Add correct display of username and date/time of posting, on comment creation - currently, these are only displayed correctly for comments created before the page was loaded (T355943)
**Possible Mentor(s)**
Yaron Koren and Brian Wolff
**Have you contacted your mentors already?**
Yes
**Timeline**
Community Period
| May 02, 2024 - May 27, 2024 | Get in touch with the mentors and familiarize myself with the community and codebase. I'll discuss potential ideas to solve the issues and improve the extension. Understand the architecture and identify relevant parts of the codebase for the issues.
Coding Period
| May 27, 2024 - June 03, 2024 | Look into the initial features to be implemented and start work on deliverables like adding the correct date/time on comment creating to the username, understanding the issue, and discussing potential approaches and implementations
| June 03, 2024 - June 10, 2024| Implement the features by properly testing each patch and following code regulations.
| June 10, 2024 - June 17, 2024| Resolve code reviews promptly and provide punctual check-ins. I also documented the changed code patches and my progress on the project.
| June 17, 2024 - June 24, 2024| Going through CSS files for different skins and research for implementations through Javascript and/or CSS for a seamless application of the feature
| June 24, 2024 - July 01, 2024| Implement the code changes, resolve code reviews, thoroughly test each change, and document the code modifications for the new features.
| July 01, 2024 - July 08, 2024| Discuss new ideas and features for improving the extension with the mentor, and in case of no pending work, start researching implementations of user mentions and pinging features, prepare for mid-evaluation, and receive feedback from the mentors.
Mid-Evaluation
| July 08, 2024 - July 15, 2024| Work on feedback received from the evaluation and continue researching implementations for user mention feature and also the autocomplete feature such that user can select the required users from a drop-down menu on mentioning them.
| July 15, 2024 - July 22, 2024| Implementing the feature, handling cases for anonymous users, and working on it .
| July 22, 2024 - July 29, 2024| Research is needed to implement and notify mentioned users using the Echo extension and discuss it with mentors.
| July 29, 2024 - August 05, 2024| Test the code, make UI changes specified, and receive mentor feedback.
| August 05, 2024 - August 12, 2024| Work on the feedback received from mentors , if completed early , work on implementing more ideas and features discussed with the mentors.
| August 12, 2024 - August 19, 2024| Work on pending or last-minute issues and prepare for final evaluation.
Final- Evaluation
**Post-GSOC**
I am learning a lot by contributing to Wikimedia. Even after the GSoC period ends, I plan on contributing to this organization by adding to my past projects and working on open issues because of the familiarity of the technical stack and the new challenges that I am continually offered in the process.
Also, I would like to complete the secondary goals mentioned in my proposal. Having picked up many development skills, my primary focus would be to help the project and the community grow. I would also be interested in helping other people in getting started with their open-source journey and guide them in this fun process.
Future Goals
-Implement an edit feature for users' comments as it is something InlineComments lacks and will make it much more user-friendly.
-Suggest more changes and features during the GSOC period.
**Participation**
I am active on Email, Zulip, and Slack. I will use Phabricator and Gerrit for issue discussions and code reviews. I plan on regularly meeting with my mentor to discuss my progress and get feedback on my work. I can dedicate 30+ hours a week as I have no other commitments.
**About Me**
**Education**
College: Indian Institute of Technology(IIT), Roorkee
Year of Study: 2nd year
Field of Study: Mathematics and Computing(Bachelors of Science)
**Skills**
- Javascript ,HTML,CSS, Tailwind : Used vanilla JS in making projects like comic-book displaying website and basic games like flappy bird and space invaders and CSS for styling.
- Django, PHP: Making backend for various applications
- React JS : Used for frontend development in full stack projects
- Flutter, Java : Used for app development in Android Studio
- Docker
**How did you hear about this program?**
After getting into college, I learned about Google Summer of Code from my seniors, and some of them were selected for it and after talking with them, I looked at the program with greater interest.
**Will you have any other time commitments, such as school work, another job, planned vacation, etc., during the program?**
No, my current semester ended in April last week, and I will have holidays for 2.5 months where I can commit all my focus to this project, and I have no other commitments.
**We advise all candidates eligible for Google Summer of Code and Outreachy to apply for both programs. Are you planning to apply to both programs and, if so, with what organization(s)?**
I am **100% loyal to Wikimedia Foundation** and only plan on applying to Google Summer of Code with the Wikimedia Foundation.
**What does making this project happen mean to you?**
I have always been excited by the prospect of converting ideas into products with real-world impact and that is exactly what the Wikimedia Foundation does, producing free and open-source applications that impart learning to millions of people over the globe.
I am highly interested in this project, and contributing to Wikimedia has been a really fantastic learning experience with assistance from all mentors; each PR teaches me something new, and each feedback and code review enhances my coding skills and understanding of the project. Getting to work on this project will teach me production-level code structures and massively impact my learning.
**Past Experience**
**Contributions to Wikimedia**
| Title | Link| Status|
| Add timestamp display to comment replies| https://gerrit.wikimedia.org/r/c/mediawiki/extensions/InlineComments/+/1010852| Merged
| App timestamp display on comment creation| https://gerrit.wikimedia.org/r/c/mediawiki/extensions/InlineComments/+/1010349| Merged
| ALRow: Add row search class| https://gerrit.wikimedia.org/r/c/mediawiki/extensions/AdminLinks/+/1007973| Merged
| Fixes DateControlSection component cut-off| https://gerrit.wikimedia.org/r/c/mediawiki/extensions/PageTriage/+/1011034| Merged
| Fixes inconsistent highlight issue in navbar| https://github.com/WikiEducationFoundation/WikiEduDashboard/pull/5661| Open
|refactors milestones to functional component| https://github.com/WikiEducationFoundation/WikiEduDashboard/pull/5601| Open
| Fixes date a11y issues| https://github.com/WikiEducationFoundation/WikiEduDashboard/pull/5687| Open
| renders dates for milestones in home tab| https://github.com/WikiEducationFoundation/WikiEduDashboard/pull/5581| Open
**Past Projects**
-[[https://github.com/sdswoc/DirecM| DirecM]]
Worked on a project on app development using Flutter and Arduino using infrared sensors for a wayfinding app for blind and visually
impaired people under an event organized by a technical club of our college.
-[[ https://github.com/fillingtothemomo/Autumn_assignment| ProTrack ]]
My first major React project.Made a full stack application for managing personal groups and projects using React JS and Django backend with
MySQL and Tailwind CSS for styling.
-[[https://github.com/amogh-babu-k-a/DRDO-APP-DEVELOPMENT/tree/DRDO_version2| DRDO sensor Malware]]
Worked on developing malware apps for DRDO, India, in a research internship under Dr. Sateesh K. Peddoju
**Other open-source contributions**
-[[https://github.com/IMGIITRoorkee/omniport-docker| Omniport-Docker]]
Official docker distribution of Omniport - one true portal for every educational institute.
-[[https://github.com/CircuitVerse/CircuitVerse/pulls/fillingtothemomo| Circuitverse]]
CircuitVerse is a free, open-source platform that allows users to construct digital logic circuits online.