Page MenuHomePhabricator

Create a notification-based reminder system
Closed, DeclinedPublic


(This is in a Draft stage)


This is outreach proposal for enhancement of Wikimedia notification system by adding a time-based reminder for logged-in users.


Name :- Akriti Verma


IRC (#wikimedia-collaboration ) :- raspberrypy

Location:- India

Typical Working Hours:-9:00 AM – 7:00 PM UTC


This project aims at developing a reminder system wherein a user can set a timer and tag name and other information about the article like comment, date, priority, in the form of an activity list. If the user logs in and the set time has elapsed, either the reminder will flash on the screen or it will be given in the form of a notification on a separate tab on top. Additionally, user will also be able to set priority of reminders and it will also reflect in the notification menu.

Possible Mentors:


Proposed Timetable:

<table> <tr> <th>KEY DATE</th> <th>TASK</th> <th>Deliverable</th> </tr> <tr> <td>October 17</td> <td> Application deadline </td> <td style="background-color:grey"></td> </tr> <tr> <td>November 8</td> <td> Student applications approved </td> <td style="background-color:grey"></td> </tr> <tr> <td>Until November 20</td> <td> Community Bonding, Discussions </td> <td style="background-color:grey"></td> </tr> <tr> <td>November 21 - November 25 </td> <td> Define the external architecture </td> <td>Block diagrams depicting the flow </td> </tr> <tr> <td> November 26 – December 10</td> <td>Prepare use cases for the proposed architecture </td> <td>Use-case Diagrams</td> </tr> <tr> <td>December 11 – December 20 </td> <td> Defining class architecture</td> <td>Class Diagrams</td> </tr> <tr> <td> December 21 – December 25</td> <td> Final Design of the GUI </td> <td> GUI Layout</td> </tr> <tr> <td>December 26 – January 10</td> <td> Front end Coding </td> <td> Simple graphical user interface </td> </tr> <tr> <td>January 11 – Febuary 10</td> <td> Back-end coding which includes: - Establishing Links between various GUI component ; Server-side coding ; Table Creation ; Module Integration ; </td> <td>Error free Runnable Code</td> </tr> <tr> <td>Febuary 11 – Febuary 15 </td> <td>Code Review</td> <td style="background-color:grey" ></td> </tr> <tr> <td>Febuary 16 – Febuary 20</td> <td>UI Walkthrough by mentors and people associated with the project.</td> <td>Report highlighting modifications based on feedbacks</td> </tr> <tr> <td>Febuary 21 – March 5</td> <td> Testing & Bug Fixing</td> <td> 1) Test Report 2)Bug Report </td> </tr> <tr> <td>March 6</td> <td> Pencils down </td> <td style="background-color:grey"></td> </tr> <tr> <td> </td> <td>** Final evaluations** </td> <td style="background-color:grey"></td> </tr> </tr> </table>


While working on this project I will regularly update my code on Gerrit .This may help other developers in tracking my work.

I further plan to Communicate through the following Channels

• I will post all reports on this MediaWiki page.
• IRC :-I’ll stay online on freenode in #wikimedia-collaboration as raspberrypy from 9:00am to 2:00pm

Proposal Copy:

About Me:

I have completed my engineering in Information and Technology from College of Engineering Pune. Later I was working for Computer Sciences Corporation as System Engineer.

How did you hear about Google Summer Of Code & Outreachy?:

I heard about these programs in a Debian conference held at Pune some years back, where I met students and others who had already participated in these programs. It was there I learned that GSOC and Outreachy conduct seasonal internships on Open Source projects. I developed interest in Open Source work, while working as a volunteer for FOSS activities held at my engineering college.

Will you have any time commitments,such as school work,another job,planned vacation etc,during the duration of the program?

I am currently working on an e-commerce project ,which will be completed by the end of this month. Therefore I can give my maximum attention to this project during the coming months.

Past Experience with Open Source:-

My first experience with open source began with my final year project in college. I was working on implementation of ‘Decentralized Social Networking using Diaspora in a Plug Computer’. My research work on this topic got published in the ‘International Journal of Advanced computer Research’ under topic- ‘Privacy and Security : Online Social Networks’.

Gerrit Contribution:-

  1. Bug: T122280:- Fix token match warning for token ending improperly To give warning if token ends for example with "\",Fixed by matching the end of $token string with urldecode(User::EDIT_TOKEN_SUFFIX). Phabricator link:-
  1. Bug: T146200 GetContent() is deprecated. Remove it from from PdfBook. Phabricator link:-
  1. (no Bug Id and phabricator page) check :

Outreachy Link:

See also:

Event Timeline

@Raspberrypy thanks for your application! Make sure a copy of this is also submitted to before Oct-17. You can edit the same till sometime afterwards.

Please get in touch with @Mattflaschen-WMF and @Mooeypoo to finalize this draft and learn on how to start contributions.
You can join #wikimedia-collaboration ( and MediaWiki-General irc channel to learn more.

@Raspberrypy: I'm afraid the Phabricator markup does not allow adding bullet lists inside of table cells. Could you edit the task description and remove the bullet points to fix the table? Also see the preview at the bottom of your browser when editing. Thanks!

Thanks again for applying.

I've merged T148124: Create a notification based reminder system for improved user experience into here. Please make any further updates here.

Please make the following updates to your proposal:

  • It should mention that you'll be in, and primarily use, the #wikimedia-collaboration IRC channel. You should also use this IRC channel right now for any questions you have about the application (you can ping matt_flaschen and mooeypoo on IRC).
  • As @Aklapper said, "Under "Typical Working Hours" you probably want to enter your approximate start and end time in UTC instead of a length.". This lets us know when you will be doing the work, so we can consider who will be available at those times. The IRC line should match this (you can just say "as raspberrypy during working hours". Note that Outreachy is a full-time 40 hour/week job.
  • Make sure your timeline is consistent with . It would also be helpful to discuss this with us (the mentors).

Could you link to your GitHub (or similar) profile if you have one?

Please also make sure you are following the process at .

Thanks again.

I have made some necessary changes in task T148124. kindly merge it with this one.

  • I couldn't decide the placement of midterm evaluation ,so please suggest me where i can place it.
  • I understand that its not possible to place list items inside the table, but i want that text to be rendered as list . Please suggest me a better way to display it.

I have made some necessary changes in task T148124. kindly merge it with this one.

Could you take a look and update in T148123 what's missing from T148124 please? Sorry but you know best what's missing. :)

  • I couldn't decide the placement of midterm evaluation ,so please suggest me where i can place it.

The midterm evaluation usually takes place after half of the program's round.

  • I understand that its not possible to place list items inside the table, but i want that text to be rendered as list . Please suggest me a better way to display it.

It's not supported by the software so you'll need to be creative. :) You could probably separate the list items by semicolons. They will be in the same line though.

Thank you for your proposal. Please add a link to your outreachy proposal in on top of your project proposal. This can be something like Outreachy Link: or similar Good Luck!

@Raspberrypy Please also add a link to your gerrit contributions. If you don't have any yet, please do submit at least one code patch before the deadline. This is a strict requirement.
Note - The patch need not necessarily be related to your project but it's preferable if it is.

I will soon upload a code patch on gerrit.

I a patch has an impact on users, please add any relevant information to that task, thanks.

Raspberrypy updated the task description. (Show Details)
Raspberrypy updated the task description. (Show Details)
Quiddity renamed this task from Create a reminder for reading articles to Create a notification-based reminder system.Nov 8 2016, 6:54 PM
Quiddity added a subscriber: Quiddity.

Note, I've changed the title because the intent is for the notifications to be adaptable for various uses, on any page; not specifically about "reading" nor specifically about "articles".

Not selected for Outreachy this time. We hope you will stick around and apply for the next round. Thanks for your interest.