Page MenuHomePhabricator

Improve InlineComments extension
Open, Needs TriagePublic

Description

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. This extension already works fairly well, but it could use some improvements that would take it to the next level:

  • 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)

There are other improvements that could be made to the extension, although mostly they are smaller; one is even listed as a microtask below. However, it is possible that more potential improvements could be suggested during the project, by either the mentor or the student.

Skills required

JavaScript (ideally including jQuery), PHP, CSS

Difficulty

Intermediate

Length

175 hours

Mentors

@Yaron_Koren and Brian Wollf (@Bawolff)

Microtasks

Related Objects

Event Timeline

Hi @Yaron_Koren

Thank you for sharing your project proposal. Please can you add the expected size of project it can be either: 90, 175 or 350 hours. If possible please also add, an easy, intermediate or hard/difficult rating. This helps the more inexperienced folks not get overwhelmed and they can focus on reviewing easy project ideas.

Thank you,

Yaron_Koren updated the task description. (Show Details)

@Maryann-Onyinye - thanks for the feedback. I just added those values.

Hi @Yaron_Koren

I have added this project to our GSOC 2024 Media Wiki page: https://www.mediawiki.org/wiki/Google_Summer_of_Code/2024#Ideas_for_projects

Kindly share your project via Wikitech by replying to this thread: https://lists.wikimedia.org/hyperkitty/list/wikitech-l@lists.wikimedia.org/thread/Y7PRNX3SMKLTT6ABLGYADTLT2NQ7MKJE/

If this is your first time mentoring via GSoC, I recommend reviewing this guide for mentors: https://www.mediawiki.org/wiki/Google_Summer_of_Code/Mentors. Additionally, i have added you and your co-mentor to our Zulip chat where you can connect with fellow mentors for ongoing support and collaboration.

Hello @Yaron_Koren ! I am interested in working on this project for GSoC and I am looking for a microtask that I could start working on right now, before I write a proposal. Do you recommend any? From what I saw on Gerrit, the microtasks on the description refer to the repositories of the InlineComments and the DocBookExport extensions, but a few of them are already being worked on by other people.

@Pedrommleao - thank you for your interest! Yes, one overly-excited potential student submitted patches for 5 of the 6 microtasks. :) We will have to add more, but for now, there are still T355950 (not done) and T324173 (patch not correct) - you could work on either of those.

Hi @Yaron_Koren I want to contribute to this project also I have the necessary skills that are required.
Could you please let me know from where should I start.
As this is my first time with the wikimedia organization.

Hi and thank you for your interest! Please check thoroughly https://www.mediawiki.org/wiki/New_Developers (and all of its communication section!). The page covers how to get started, assigning tasks, task status, how to find a codebase, how to create patches, where to ask general development questions and where to get help with setup problems, and how to ask good questions. Thanks a lot! :)

@Jatinder190124 - I just added a few more microtasks, so please pick one of the remaining ones to work on. (Ignore the message above - I think it's automated.)

Hello, @Yaron_Koren !
I'm Mohommed Shadir, a 3rd year undergraduate student in Department of Computer Science,University of Vavuniya, Sri Lanka. I am interested to work on the project 'improve Inline Comments extension' at wikimedia organization under your mentoring. I assure that I am proficient in JavaScript, PHP, CSS and I have done several projects using these languages in my university. I am really enthusiastic in working this project and I'm looking forward if you could recommend me a microtask that I may able to complete and express my passion for the project.

@Shadir_Rifai - it's great that you're interested! Please just pick any one microtask that hasn't been taken yet; any of them should be fine.

@Yaron_Koren , Thank you. I'll start working on those microtasks!!

Hi @Yaron_Koren my name is Destiny I would love it if I am added/ allowed to contribute to this please , I have the skill specified above with almost 2 years of working experience in terms of gigs and company wise .

@Destiny - that sounds good. I think there are still two available microtasks: T353094 and T324173 (the latter had a patch submitted for it, but it wasn't quite correct). Feel free to take one of them. (If we run out of microtasks, I can add a few more.)

I just added T358843 as another microtask.

@Yaron_Koren I configured the InlineComments extension on my local and went through the documentation and found out that it uses ContentHandler , however I was not able to figure out how to navigate to it on my localhost. Is there any reference for that I can go through?

@Yaron_Koren I configured the InlineComments extension on my local and went through the documentation and found out that it uses ContentHandler , however I was not able to figure out how to navigate to it on my localhost. Is there any reference for that I can go through?

Are you able to navigate to MediaWiki (If not, the answer depends on how you setup mediawiki, see https://www.mediawiki.org/wiki/How_to_become_a_MediaWiki_hacker for more info)? You would just go to the main page of your wiki once set up. At the start there are no comments so you have to add one by highlighting text. You can only do this if you logged into an account, so make sure you did that.

@Yaron_Koren I configured the InlineComments extension on my local and went through the documentation and found out that it uses ContentHandler , however I was not able to figure out how to navigate to it on my localhost. Is there any reference for that I can go through?

Are you able to navigate to MediaWiki (If not, the answer depends on how you setup mediawiki, see https://www.mediawiki.org/wiki/How_to_become_a_MediaWiki_hacker for more info)? You would just go to the main page of your wiki once set up. At the start there are no comments so you have to add one by highlighting text. You can only do this if you logged into an account, so make sure you did that.

Thanks a lot, I figured it out and it's working fine.

@Yaron_Koren and @Bawolff I went through the extension on my local and currently an option to edit and delete comments is not available (a similar example , say google docs has those features) , we can go around that by resolving the comments but introducing these features will make it more user friendly . What are your opinions on it?

@Rockingpenny4 - interesting ideas. I just looked again at how Google Docs does it. As far as I can tell, InlineComments does let you delete comments in basically the same way Google Docs does - in Google Docs, you can either mark a whole thread as resolved, or delete a whole thread - the effect of both is the same, and I don't know what the difference is. In InlineComments, you can click the "Mark resolved" button, which also does the same thing - maybe the name of that button should change, but the functionality is the same, I think.

Editing comments is a different story - that's definitely something that InlineComments is lacking. It looks like in Google Docs users can only edit their own comments, which is the approach that InlineComments should take as well, if it gains this feature. Personally, I think it makes a lot of sense to add editing.

Hi @Yaron_Koren , This side is Yash , to contribute under the Gsoc wht should i do first ? can you please clear my confusion ?
and this project is suited to my skillsets for contributing on it

Hi everyone - there are six people who have completed, or are currently working on, a microtask for this project. We plan to select someone from among these six applicants. If you are not one of these six, it is unfortunately too late for you to take this project; please find a different GSoC project to apply for.

really Thankyou @Yaron_Koren under your guidance I am able to do so.
I am glad to be the one of those six participants.
I am preparing my proposal. I will update you within few days.

Hi - one unfortunate aspect of the Google Summer of Code is that, most of the time, by the time you find out whether you have been accepted or not to a particular project, it's too late to apply for a different one. I have always tried to avoid that happening to applicants, so my plan was always to pick someone as soon as possible. Brian and I have now done that, and we have chosen @Jayanthvikashs as the student for this project. That means the other five of you who completed microtasks will have to find another project, if you are still interested in doing the Google Summer of Code this year. It is too bad, because many of you seemed to have both the technical skills and the enthusiasm to be able to do a good job on this project; but unfortunately we can only select one student. Hopefully your effort will not have been wasted, and you can point to the task(s) you did (or are currently doing) when applying for a different project, whether it's for the Wikimedia Foundation (ideally) or elsewhere. (Certainly your effort was not wasted in terms of your code contributions to MediaWiki extensions!) Sorry, and good luck.

EDIT: Please disregard the above. Our new note is this:

This project idea has quite a few strong proposals from folks so you may want to look at another project idea.

@Yaron_Koren Please give my propoal a try atleast,.
I really want to work with you @Yaron_Koren @Bawolff

@Jatinder190124 - thank you for the proposal; we will carefully evaluate every proposal we receive, including yours.

In order to get selected for gsoc I would love your feedback on my proposal and any additional changes that should be helpful, I will be implementing those ?

Your proposal looks good, including your past experience and set of programming skills - I can't think of anything that needs to be added.

@Yaron_Koren , @Bawolff please have a look at my GSOC proposal and feedback on it will be really appreciated https://phabricator.wikimedia.org/T359889. Thanks!

@Rockingpenny4 if your PR's are not merged you should not mention in the proposal.
Because raising a PR doesn't mean your change would be fine and accepted.

@Jatinder190124 you can also review the PRs and see the approved changes by the maintainer that have been made to resolve the issues and open PRs are also a part of contribution but yes I should mention that they are open, I'll make the changes. Thanks.

@Rockingpenny4 - sorry for the delay. Your proposal looks good! Impressive previous experience. You can of course add a few more completed patches to the "Contributions to Wikimedia" section now.

@Yaron_Koren thanks for the feedback, I have updated my merged patches along with some mock UI in the proposal. I think I can add more information and make it more detailed in the coming days.

Hi @Yaron666 Added my final proposal to the Gsoc .
Thankyou very much for the guidance and support

can i work on this project in GSOC