PROJECT PROPOSAL
PROJECT NAME:
Develop a UserScript/Gadget tutorial on MediaWiki.org similar to Wikipedia:The_Wikipedia Adventure
PROJECT DESCRIPTION:
User scripts are programs written in JavaScript for use on Wikimedia projects by users.
User scripts enable the Wikimedia user account to do many things that they otherwise couldn't.
Like changing DOM, appending HTML snippets in DOM, and changing Interface according to browsers
events etc. The project is about to create a guided adventure tour on MediaWiki and MetaWiki(?)
to give users insight on “How to create userscript on Wikimedia projects”.
The adventure will be designed like The Wikipedia Adventure”[0] which will have 3-4 missions.
Mission 1: Basic Intro
Mission 2: Using MediaWiki’s JS module
Mission 3: Using MediaWiki API
Mission 4: Using OOUI (Optional)
ABOUT ME
Name: Ritwik Srivastava
Timezone: Asia/Kolkata(UTC +05:30)
Course: Bachelor of Technology, Computer Science & Engineering
University: Indian Institute of Information Technology, Design & Manufacturing, Kurnool
Country: India
LinkedIn: https://www.linkedin.com/in/ritwik-srivastava-6b9602195/
Mentors in contact: Jayprakash
WHY DID YOU CHOOSE THIS PROJECT?
Having prior experience with HTML,CSS,JAVASCRIPT and JQuery I found this project for me. I have worked and still work in Wikimedia projects and I found this project very interesting for me. I am familiar with the codebase of the project. The idea behind this project is very useful and can help users save time and interact better with Wikimedia once a good complete guide of creating User Scripts are available for the users. Adding support and guidance for Wikimedia users as well as some extra features as described in the abstract is something I think I'll be able to deliver.
TITLE
Develop a UserScript/Gadget tutorial on MediaWiki.org
ABSTRACT
MediaWiki is currently missing several types of resources for users to use for their guidance.
For Example:
-> It is not much interactive
-> It does not allow for features like changing DOM, appending HTML snippets in DOM
-> It should allow changing Interface according to browser events.
EXTRA:
Also Create a Suggestion list where users can themselves add suggestions for further improvement of Wikimedia.org. This Can easily be done using React framework and JavaScript.
PROJECT TIMELINE
PRE-GSOC PERIOD:
->To familiarize myself completely with the project's funtionality and architecture, the ersion control system and the documentation provided.
->Bond with the community by regularly interacting eith them about the ideas I put forward and
discussing the ways to implement the ideas.
->Solving existing issues and bugs to get more familiar with the codebase of the project.
->Get hands on experience by using the project and analysing its merits, demerits and missing functionalities.
MAY 17-JUNE 7
- Test and document the existing code thoroughly.
- During this period I will stay constantly in touch with my mentor and the community members
through mailing lists and discuss and finalize the modifications that are needed to be made into the project.
JUNE 7-JUNE 14
- Create a basic user script that use OOUI in JavaScript.
- Be creative and make sure it does not use more than 6 widgets.
JUNE 20-JUNE 24
- Test the built user script for any errors/bugs.
- Put the tour code in my MediaWiki's wiki page under my User namespace.
JUNE 25-JUNE 28
- Phase 1 Evaluation
JUNE 29-JULY 17
-Create a JavaScript program that makes an interesting query using the MediaWiki API.
-Try to do something more interesting than getting the text of a page.
For example, trying to get the items in a category or finding the username of the most recent
editor of a page, and adding many new interesting and useful features.
JULY 18-JULY 22
- Document the newly added features and changes into the project library.
- Discuss the functionalities so far added to the project with the mentors and community members.
- Go through the user scripts and add functionalities more thoroughly.
JULY 23-JULY 26
Phase 2 evaluation
JULY 27-AUGUST 9
- Setting up the new Project for use so as to analyze its behaviour with the traffic.
- Test coverage and debugging to ensure everything is accurate and bug-free.
- Document the changes
- Upgrade the README.md file of the project with all the changes mad eand all the features added with source code tutorials.
AUGUST 10- AUGUST 23
- I would try to optimize and analyse my code and discuss with the community about any final changes to be made.
HAVE YOU MADE ANY PAST CONTRIBUTION ?
Yes and I plan to make more good contributions in the future.
https://github.com/wikimedia/WikimediaUI-Style-Guide/pull/429
HAVE YOU EVER PARTICIPATED IN GSOC EARLIER?
No, I have not participated in GSoC before.
DO YOU PLAN CONTRIBUTING AFTER GSoC PERIOD?
Yes, I plan on contributing as much as I can to this project after the GSoC period too.I plan on working on various other projects as well offered by Wikimedia Foundations.
WHY SHOULD YOU CHOOSE ME?
I am well familiar with the technologies used in the project such as HTML, CSS, JAVASCRIPT, JQuery and hence I will prove to be a suitable candidate for this proh=ject. I have thoroughly gone through the codebase and have explored the use of user scripts and their significance which has attracted me to this project.
I have been working on WIKIMEDIA foundations projects and plan to contribute as much as I can in the future.
I have good knowledge of HTML,CSS, JavaScript and JQuery and I am willing to put efforts for the learning curve required for various other technologies used. I have worked with Web scripting languages and other frameworks such as React and Django.
This experience has made my skills stronger and I think I'll prove to be a valid candidate for this project if selected. I plan to contribute to this and various other projects in the future on a regular basis.