Page MenuHomePhabricator

GSoC 2024 proposal - Improve InlineComments extension
Open, Needs TriagePublic

Description

Profile Information

Name: Jayanth Vikash S
Email: jayanthvikashs@gmail.com
GitHub: https://github.com/JayanthVikashS
Location: Tamil Nadu, India (IN).
Mentors: @Yaron_Koren and @Bawolff
Typical working hours: 18:00 IST - 01:00 IST (UTC +5:30)

Synopsis

Improve InlineComments extension
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.

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 correctly-linked username, on comment creation - currently, it is only displayed correctly for comments created before the page was loaded (T355943)

About Me

I'm Jayanth Vikash S, a graduate student pursuing my Master of Technology in Computer Science and Engineering at Vellore Institute of Technology, Vellore,India. I'm a person inclined towards full stack development and looking forward to getting started with my open source journey. I have participated in around 10 international hackathons organized by companies like Amazon, Rapyd, MLH, etc., and won prizes in 3 of them. I worked on a project called Credible which is an integrated platform for enabling the companies to analyse the standard aspects of business model such as Resume Analysis, Customer review analysis, Sentiment analysis on write-ups and consolidated tweet analysis using expert.ai Natural Language API. I have also worked on a project called Product Score which is a one-stop web application for analysing the public reviews of apps in Atlassian Marketplace, Google Play Store and App Store.

Technical participation

  • Monday.com Climate Change App Challenge

Project: Helps companies in providing bonus payments to employees based on the carbon emission of their vehicles.

  • Hack the North 2021

Project: To keep social networks safe from computer generated/morphed images

  • Runner in Global Yaadhum Oore Conclave Hackathon

Project: Android app which fills digital forms for uneducated people by interacting with them through voice using the Google TTS engine.

Relevant skills

  • PHP
  • JavaScript
  • jQuery
  • Python
  • Django
  • HTML
  • CSS
  • Java

Availability

1. Are you eligible for Google Summer of Code?
Yes. I’m eligible according to the terms described.

2. Do you plan to submit any other proposal apart from this one?
No. This is my only go.

3. Do you have any other plans during the period of GSoC?
No. I will be available for the entire term of GSoC.

4. How many hours per week can you dedicate to this?
I can dedicate 30 hours per week and even more if necessary.

5. Have you been accepted to GSoC before?
No. This is my first attempt.

Wikimedia Contribution

TitleStatusLink
Fix PHP 8.1 deprecation errors for fields being nullMergedhttps://gerrit.wikimedia.org/r/c/mediawiki/extensions/Cargo/+/1008073
Parse description as wikitext in feed formatMergedhttps://gerrit.wikimedia.org/r/c/mediawiki/extensions/Cargo/+/1009392

Timeline

TimeframeTask
Community bonding periodGetting in touch with the mentors
(May 02, 2024 - May 27, 2024)Interacting with the mentors and discuss on the project
Understand the codebase and architecture of the extension
First weekDefine the project requirements and features to be developed
(May 27, 2024 - June 03 , 2024)Develop the code strategy and decide on the potential deadlines for each feature development and testing
Second weekSet up the development environment
(June 03, 2024 - June 10, 2024)Discuss and finalize the approach for each feature with the mentors
Third weekImplementation of correction in correctly-linked username, on comment creation
(June 10, 2024 - June 17, 2024)Test the implemented display correction for correctly-linked username
Refactor and prepare the code for check-in
Fourth weekMeeting with the mentors for suggestions
(June 17, 2024 - June 24, 2024)Refactoring work according to suggestions
Fifth weekCommence development of skin-neutral sidebar creation
(June 24, 2024 - July 01, 2024)Test the sidebar behavior with various skins
Verify the user interface in different screen sizes and scenarios
Sixth weekWriting the first blog post
(July 01, 2024 - July 08, 2024)Documentation update for the implemented features
Seventh weekMid-term evaluation
(July 08, 2024 - July 15, 2024)Testing and bug fixing
Eighth weekImplement user-mentions in annotation style referred by the appropriate usernames
(July 15, 2024 - July 22, 2024)Cover the edge cases like anonymous users and permission handling
Ninth weekMeeting with mentors for suggestions on the proposed implementation of user mentions
(July 22, 2024 - July 29, 2024)Refactoring the code and testing according to the suggestions
Tenth weekDevelop additional features if any desired deliverables are agreed upon
(July 29, 2024 - August 05, 2024)Documentation for the user-mentions feature
Final blog post publication