**Profile Information**
**Name:** Maunika Shekar
**Email:** [[ mailto:maunika.shekar@gmail.com | maunika.shekar@gmail.com ]]
**GitHub: **[[ https://github.com/maunikashekar | https://github.com/maunikashekar ]]
**Location: **Tamil Nadu, India (IN).
**Mentors:** @Soda and @TheresNoTime
**Typical working hours: **18:00 IST - 01:00 IST (UTC +5:30)
**Synopsis**
**Improve searchability and filtering of PageTriage feed**
PageTriage is an MediaWiki extension that allows patrollers on the English Wikipedia to track, categorize and deal with problematic new pages. One of its features is the VueJS based New pages feed which allows patrollers to filter specific interesting pages they might want to patrol based on certain criteria. However, these filters are often limited and there has been some interest amongst the community to introduce newer filters and in general improve the ability to search for specific content on the NewPagesFeed. The goal of this project is to enhance the filtering and searching capabilities of the NewPagesFeed. Particularly adding features like AI based topic prediction (leveraging the ORES API), the ability to search for a specific keyword in an article, filter by how many pageviews an article gets and be able to search by how similar a particular page is to other deleted pages.
**Deliverables**
- Add ORES topic prediction to the NewPagesFeed and allow filtering by the same(T218132)
- Special:NewPageFeed - add option to filter by pageviews(T207238)
- Keyword Search for New Pages Feed( T207761)
- See and filter with percent similarity to top deleted revision( T327955)
**About Me**
I am Maunika Shekar, working as an R&D Apprentice in Informatica Business Solutions Pvt. Ltd. I'm inclined towards full stack development and looking forward to getting started with my Open Source journey. I have closely collaborated with connector development team and implemented minor features of the Oracle Cloud Infrastructure (OCI) connector based on the business requirements using core Java. I have experience in setting up and maintaining Docker environments in business setup for large scale applications. I also have experience in building and maintaining web applications made with frameworks like React, VueJS, SpringBoot and Django.
**Relevant skills**
- Vue JS
- PHP
- JavaScript
- SQL
- REST API
- SPARQL
- 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**
| **Title** | **Status** | **Link**
|Fix info chips problem in NewPagesFeed Filters|Under review|https://gerrit.wikimedia.org/r/c/mediawiki/extensions/PageTriage/+/1010683
|Fix "Add details" button functionality in curation toolbar|Under review|https://gerrit.wikimedia.org/r/c/mediawiki/extensions/PageTriage/+/1010966
|Make "Show all" selected by default in filters|Under review|https://gerrit.wikimedia.org/r/c/mediawiki/extensions/PageTriage/+/1009397
|Fix multiple CSD selection problem based on code|Under review|https://gerrit.wikimedia.org/r/c/mediawiki/extensions/PageTriage/+/1010972
|Add close functionality for filters dialog on outside-click|Under review|https://gerrit.wikimedia.org/r/c/mediawiki/extensions/PageTriage/+/1009405
|Fix 'were created by' filter problem in NewPagesFeed|Abandoned(Redundant)|https://gerrit.wikimedia.org/r/c/mediawiki/extensions/PageTriage/+/1010685
**Microtask**
**WikiStats** - A Vue.js based single page application to show some interesting statistics from PageTriage and Wikipedia Article Views along with a sample image grid from Wikimedia Commons.
**Source code**: https://github.com/maunikashekar/wikistats
**Libraries**: Wikimedia Codex, Axios
**Timeline**
| **Timeframe** | **Task**
| **Community bonding period** | Getting 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 week** | Define 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 week** | Set up the development environment
| (June 03, 2024 - June 10, 2024) | Discuss and finalize the approach for each feature with the mentors
| **Third week** | Add an option to filter by pageviews in Special:NewPagesFeed
| (June 10, 2024 - June 17, 2024) | Test the pageviews filter functionality
| | Refactor and prepare the code for check-in
| **Fourth week** | Meeting with the mentors for suggestions
| (June 17, 2024 - June 24, 2024) | Refactoring work according to suggestions
| **Fifth week** | Implement keyword search for New Pages Feed
| (June 24, 2024 - July 01, 2024) | Test the keyword search functionality for multiple edge cases in New Pages Feed
| **Sixth week** | Writing the first blog post
| (July 01, 2024 - July 08, 2024) | Documentation update for the implemented features
| **Seventh week** | Mid-term evaluation
| (July 08, 2024 - July 15, 2024) | Testing and bug fixing
| **Eighth week** | Implement functionality to filter with percent similarity to top deleted revision
| (July 15, 2024 - July 22, 2024) | Test the filter functionality based on multiple revision delete edge cases
| **Ninth week** | Meeting with mentors for suggestions on the proposed implementation of ORES topic prediction functionality
| (July 22, 2024 - July 29, 2024) | Refactoring the code and testing according to the suggestions
| **Tenth week** | Implement filter for ORES based topic prediction in NewPagesFeed
| (July 29, 2024 - August 05, 2024) | Test the topic prediction functionality based on different contexts
| **Eleventh week** (August 06, 2024 - August 13, 2024) | Develop additional features if any desired deliverables are agreed upon
| **Twelfth week** | Final testing and documentation preparation for the implemented features
| (August 14, 2024 - August 21, 2024) | Final blog post publication