Page MenuHomePhabricator

Outreachy Round 18: Documentation improvements to the ~20 top 70 most viewed MediaWiki Action API pages on-wiki
Closed, ResolvedPublic

Description

Brief summary

The MediaWiki action API is a web service that allows access to some wiki-features like authentication, page operations, and search. It can provide meta information about the wiki and the logged-in user. Several Wikimedia projects make use of this API.

As of now, there are ~128 pages on the Action API on MediaWiki.org. Developer-Advocacy did a little research on the state of the docs and documented a few problems and recommendations for the next steps. One of the issues we decided to address was inconsistency. For example, some pages had the automated API docs embedded; some didn’t, some pages had code samples, some didn’t, etc. As a first step, we designed a documentation template and used it to re-write top 20 viewed pages of the API. But, we realized we could not improve 128 pages all by ourselves, and opened it to new Wikimedia contributors for help :-) Our Outreachy intern @Martyav put in a lot of good work in this and improved the next ~20 pages and brought this project in good shape!

The goal of this project is to improve documentation of ~20 top 70 most viewed MediaWiki Action API pages on-wiki using the documentation template.

(OPTIONAL) If there is more time, then the next part of the project could be developing one or two demo apps around the use of Action APIs.

Skills required

Wiki editing, Templates, creating and managing translatable pages, Wikimedia Phabricator tool, basic Python programming. Note: some or all of these skills would be nice to have but not required. Come with a desire to learn and that be all!

Code repository

https://github.com/wikimedia/MediaWiki-Action-API-Code-Samples

Microtasks
  1. Two issues on Github around improving existing code samples:
IssueWork in progressDone
Build the UI for account creation form via Authmanagerinfo module. View issue on Github.@shruthishridhar
Add an example to demonstrate the use of API:Links module to identify red links on a page. View issue on Github.@Didicodes, @supriyasupu@jeropbrenda
  1. Pick an API page to work on and add your Phabricator username next to it in the relevant column:
Getting started instructions for third microtask
  • Set up Git on your computer and a Github account if you don’t already have one. Learn how to use both.
  • Set up a MediaWiki account if you don’t already have one.
  • Read the project description thoroughly and the MediaWiki Action API too.
  • Pick an action page from the table above that you would like to review and improve. Add your name next to the project in the “Work in progress” column. You will need to be logged into Phabricator and subscribed to the task and only then you will be able to edit the task description
  • Create a page in your Sandbox (https://www.mediawiki.org/wiki/User:your_username/Sandbox/API:pagename) and do not make edits directly to the API pages.
  • Fill it with the template content which is in here: https://www.mediawiki.org/wiki/API:Documentation_template (copy and paste). We encourage you to stick to the template if for some reason you feel the urge to add or remove any section, discuss with your mentors.
  • For your reference, read a couple recent API pages that we modified using the new template: API:Geosearch, API:Parsing_wikitext
  • Contribute sample code for the API page to this repository: https://github.com/wikimedia/MediaWiki-Action-API-Code-Samples. Please read the contribution guidelines before starting to work on a topic.
  • When you are done, ping @srishakatux on Zulip and get some feedback on your work.
  • Incorporate feedback. Once you get a green signal, coordinate with mentors in getting your changes integrated with the actual page on MediaWiki.org.
  • Finally, add your name next to the project in the “Done” column in the table above.
Mentor(s)

@srishakatux @srodlund

Get in touch with mentors

Ask a question in the topic Phab:T215682 API documentation improvements under https://wikimedia.zulipchat.com/#narrow/stream/180873-gsoc19-outreachy18

Resources

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
supriyasupu updated the task description. (Show Details)Mar 4 2019, 6:29 AM

Hii @srishakatux ,
I have a few questions regarding contribution. Could you please help me with that?

  1. How to subscribe for a task to be able to edit the task description and work on the API?
  2. Am I supposed to change any code or I have to improve documentation of the API similar to the example template given?
Edisonabah updated the task description. (Show Details)Mar 4 2019, 8:27 AM
Hasinifoss updated the task description. (Show Details)Mar 4 2019, 8:28 AM
Edisonabah updated the task description. (Show Details)Mar 4 2019, 8:30 AM
Edisonabah updated the task description. (Show Details)Mar 4 2019, 8:33 AM
Edisonabah updated the task description. (Show Details)Mar 4 2019, 9:35 AM
supriyasupu updated the task description. (Show Details)Mar 4 2019, 9:45 AM
Radhika12 updated the task description. (Show Details)Mar 4 2019, 9:58 AM
jeropbrenda updated the task description. (Show Details)Mar 4 2019, 12:18 PM
jeropbrenda updated the task description. (Show Details)Mar 4 2019, 12:21 PM

@srishakatux API:Siteinfo is listed twice

Hi and welcome @Diksha11b,

  1. How to subscribe for a task to be able to edit the task description and work on the API?

General help on infrastructure tools like Phabricator is off-topic in this task - this task is about documentation improvements and not about using Phabricator. :) Please see the Phabricator Help and/or use Zulip for questions about Phabricator itself. Thanks!

  1. Am I supposed to change any code or I have to improve documentation of the API similar to the example template given?

This task is about documentation, not about changing code in the software. However, good documentation also offers tested code examples. :)

@Aklapper Thanks a lot for help.:)

SilkyPriya updated the task description. (Show Details)Mar 4 2019, 1:05 PM
jeropbrenda updated the task description. (Show Details)Mar 4 2019, 1:19 PM
supriyasupu updated the task description. (Show Details)Mar 4 2019, 7:18 PM
Kjpri added a subscriber: Kjpri.Mar 4 2019, 7:34 PM
Kjpri removed a subscriber: Kjpri.
Kjpri added a subscriber: Kjpri.Mar 4 2019, 7:36 PM
dave_oh added a subscriber: dave_oh.Mar 4 2019, 7:38 PM
dave_oh updated the task description. (Show Details)Mar 4 2019, 7:43 PM
dave_oh updated the task description. (Show Details)
Nimbus20 added a subscriber: Nimbus20.EditedMar 4 2019, 7:51 PM

@SilkyPriya @Didicodes @supriyasupu
I request you to work on the two tasks already assigned to you.
It's explicitly mentioned not to take to take more than two tasks at one time. Please let others work on the issues as well.

Nimbus20 updated the task description. (Show Details)Mar 4 2019, 8:14 PM

@Nimbus20 Sure. I am done with previous assigned task hence I get myself assigned for new one. I know everyone should get fair chance so If anyone is new and wants to work on API:siteinfo, can take task.

supriyasupu updated the task description. (Show Details)Mar 4 2019, 8:35 PM
Oragonics updated the task description. (Show Details)Mar 5 2019, 3:24 AM

@srishakatux please review my changes (currently in my sandbox) for the API siteInfo.

jeropbrenda updated the task description. (Show Details)Mar 5 2019, 3:52 PM
Arrsquare claimed this task.Mar 6 2019, 6:22 AM
Arrsquare updated the task description. (Show Details)
Aklapper removed Arrsquare as the assignee of this task.Mar 6 2019, 9:22 AM
SilkyPriya updated the task description. (Show Details)Mar 7 2019, 5:49 AM
Aashuli removed a subscriber: Aashuli.Mar 7 2019, 5:12 PM
Aashuli added a subscriber: Aashuli.

hi, seems all the tasks are taken, will there be more tasks for those who dont have any?

Oragonics updated the task description. (Show Details)Mar 8 2019, 1:27 AM
SilkyPriya updated the task description. (Show Details)Mar 8 2019, 5:56 AM

I could not assign any task to myself yet , Can I get any task so that I can contribute to the project?

Areefa updated the task description. (Show Details)Mar 8 2019, 5:16 PM

Hey @Didicodes , I request you to work on any two task out of those tasks you have assigned to yourself so that I can start working on one of them as I can not find any task unassigned in the task description.

Hello, @Aashuli I would totally love to remove my name from a task so that you get an opportunity to work on something, but I have already made pull requests for all of them. Sorry!

Didicodes added a comment.EditedMar 8 2019, 7:01 PM

@Aashuli on second thought, I will replace your name on the task for API: Pagepropnames. Enjoy working on it!

Didicodes updated the task description. (Show Details)Mar 8 2019, 7:04 PM
Nikitrain updated the task description. (Show Details)Mar 9 2019, 10:42 AM

Hi @srishakatux I am an Outreachy applicant and I would love to contribute. Could you please assign a task to me to begin with?

@AakankshaShastri_1: Hi and welcome! Please read previous comments (T215682#4987359 and T215682#4996853). Thanks!

Hey, Thank you for the reply @Aklapper. May I know if the micro tasks would be added soon, as I see all of them taken up by other aspirants

Olena23 updated the task description. (Show Details)Mar 10 2019, 9:32 AM
Olena23 updated the task description. (Show Details)
Didicodes updated the task description. (Show Details)Mar 11 2019, 1:00 AM
Restricted Application added a subscriber: Liuxinyu970226. · View Herald TranscriptMar 11 2019, 1:00 AM
Nikitrain updated the task description. (Show Details)Mar 11 2019, 7:01 AM

Hi, I am an Outreachy applicant and will like to contribute to this project. @srishakatux can i be assigned some tasks please.

@Jenniline: Hi and welcome! Please see T215682#4987359 again. Thanks.

Hi, I am Parul. I want to work on the Wikimedia project for the Outreachy program. Can anyone please tell me about the resources and from where to start contributing?

Nufina added a subscriber: Nufina.Mar 12 2019, 6:59 AM

Hi everyone. I am an Outreachy applicant and I would love to contribute to this project. Miss @srishakatux can I be assigned some tasks, please. Or Can I work on microtask directly? Thank You.

@Jenniline @parul-priyedarshani @Nufina Welcome! To quote the project mentor:

 Thanks for your interest! At this point, the project you've mentioned has received a lot of interest and contributions from potential candidates already.
 I will encourage you to take a look at other projects we are promoting in Outreachy Round 18:
 https://www.mediawiki.org/wiki/Outreachy/Round_18
 Also, there is another project that we have not yet published on the Outreachy site but soon going to:
https://phabricator.wikimedia.org/T217699. You could get in touch with project mentors by commenting on the task in Phabricator.

@Nufina: Hi and welcome! See T215682#4987359 and T215682#5012936

@parul-priyedarshani: Hi and welcome! See T215682#4995668.

In general: Repeating the same questions again and again instead of first reading the answers above is not a good use of anybody's time...

Eisheeta updated the task description. (Show Details)Mar 12 2019, 12:14 PM
Didicodes added a subscriber: Nikita0511.EditedMar 12 2019, 3:14 PM

Hello @srishakatux ,
@Abhism9450 mentioned earlier on Github that he was no longer applying for this project. I also noticed that @Nikitrain is already working on API:Allrevisions. Can I start working on API:Compare?

Didicodes updated the task description. (Show Details)Mar 13 2019, 5:18 AM

I would like to remind you all that the deadline for applying is in less than ten days :)

Wohooo! If you are still onboard and applying, I would encourage you to put in your proposal early. If you all could do that by Monday, then I might be able to give you feedback by Thursday (March 21st). I won't be available starting Friday (March 22nd) of next week until Monday (March 25th). I will be available on Tuesday (March 26th) but any last minute feedback will not be helpful for you.

So, if possible if you all could put in your applications by Monday that would be awesome. That way I will be able to do atleast one round of feedback for everybody.

Although this project is not eligible for Google Summer of Code, if you are eligible for the GSoC program, please indicate that in your application.

By now, I've provided feedback to everyone at least once on their pull requests. There are a few still open that needs some more work before I can merge them. Don't worry about that; I will continue to work with you on them until Thursday of next week.

Good luck working on the application process!

Mansi29ag updated the task description. (Show Details)Mar 20 2019, 12:22 PM
Eisheeta updated the task description. (Show Details)Mar 20 2019, 2:32 PM
Arrsquare updated the task description. (Show Details)Mar 20 2019, 6:45 PM
Aashuli updated the task description. (Show Details)Mar 24 2019, 4:04 PM
Edisonabah updated the task description. (Show Details)Mar 25 2019, 5:45 AM
Edisonabah updated the task description. (Show Details)Mar 26 2019, 6:01 PM

Initial feedback update: I've improved 9 pages in my sandbox, and seven of them have been merged to the main namespace. More detailed information available at https://www.mediawiki.org/wiki/User:Jeropbrenda#Project_Outcomes

Final update:

  • 22 pages improved (8 overview pages and 14 API module pages).
  • One demo app developed.

More detailed updates available at https://www.mediawiki.org/wiki/User:Jeropbrenda#Project_Outcomes

Restricted Application added a project: Core Platform Team. · View Herald TranscriptAug 22 2019, 7:23 AM
bd808 awarded a token.Sep 2 2019, 8:55 PM
srishakatux closed this task as Resolved.Sep 3 2019, 9:41 PM
srishakatux awarded a token.

(thank you @jeropbrenda for all your work)