User:Mecyborg/GSoC2014

Catalogue for MediaWiki extensions

 * Public URL: http://www.google-melange.com/gsoc/proposal/review/student/google/gsoc2014/mecyborg/5629499534213120

 Bugzilla report: Bug 46704

Name and contact information
 Name: Nikunj Gupta  Email: nikunjboss@gmail.com || nikunj.lnmiit@gmail.com IRC:  mecyborg on freenode, channels: #mediawiki and #wikimedia-dev Skype: nikunjboss
 * Web Page / Blog / Microblog / Portfolio:Mediawiki User Profile: mecyborg
 * My Website: https://gizmantra.com
 * LinkedIn Profile: LinkedIn
 * Twitter: mecyborg

Location: Jaipur, India (GMT+05:30) Typical working hours:  11 am - 6 pm (IST) and 10 pm - 4 am (IST)

Synopsis
There are currently about 2000 extensions available on MediaWiki.org. However, it is hard to identify and assess which extension fits a particular need. Moreover, it is not clear which version of the extension to take for a particular MediaWiki version. And we need to find the most popular or most frequently downloaded extensions, we have to go to a third party site like WikiApiary which currently handles the extensions database.Plus, data syndication between both. There is a lot of scope for improvement and creative ideas. The current plan is to implement a rating system on WikiApiary and syndicate the data to MediaWiki.org. Goals: The goal is to make this process more interactive and provide optimal browsing experience, by making enhancements to WikiApiary to provide structured information about the extensions (based on download numbers, Ratings or release date). Parts of this information is already available but others are needed to be implemented for a good experience. There is need of search functionality and sorting function based on popularity, authors, rating, etc. We can also implement similar extensions recommendations or finding facility. Enhancement of the User Interface for a good and interactive browsing experience.

Possible mentors

 * Markus Glaser, Mark Hershberger

Different phases/stages of the project
1) User Rating System:

The main target is to develop and maintain a User Rating System by which user can provide feedback and ratings to the catalogue extensions. The overall rating of an extension can be calculated based on various factors including user rating and number of users using that extension. This will be implemented on a better and interactive UI which is the next phase.

2) User Interface enhancements and modifications:

To enhance the presentation layer of WikiApiary and make it more user friendly and interactive we need to do some modifications to WikiApiary portal.

3) Addition/Extension of the ‘Search Extensions’, Sorting and ‘Similar Extensions’:

Here, the target is to create an enhancement to extensions database to incorporating the new functionalities.

4) Data Syndication Syndicate the Wikiapiary information with MediaWiki.org.

Deliverables
User rating system for Wikiapiary. Enhancements to User Interface of Wikiapiary. Implemented sorting and similar extensions functionality. Data syndication system between Wikiapiary and MediaWiki. User Manual and Documentation.

Workflow
April 25th to May 5th - Analyze the details of the current website and bonding with the community for understanding the project details and getting other recommendations regarding.

May 6th to May 15th - Design the project implementation and discussion with the community for the same. This will cover front end designs and the back end coding structure design. Building all the required models and prototypes for above mentioned design.

May 16th to June 17th - Implementing the user rating system. With definite set of rules and standards for the rating criteria the system will be developed. Develop method/algorithm to calculate overall rating for the extensions. Synchronizing the rating with the database and front end using the UI elements and currently available tags in the MediaWiki portal.

June 18th to July 5th - Extending and modifying the UI of the portal for adding and integrating new functionalities and implementing the rating, search, sort and similar extensions front end. This will ensure smooth and interactive user experience.

July 5th to July 20th - Addition of the new features to the portal i.e. sorting implementation based on various factors and also providing users the similar extensions recommendations. Enhancing the search capability and incorporating all of these features to the UI.

July 20th to July 30th - In this last development phase of the project, the data syndication part will be done. For this purpose an automation system will developed that will syndicate the information of the WikiApiary extensions portal with the MediaWiki portal. For this, there is a need of using the user database of both and syndicating the data for them. System for the information and facts related to the extensions and syndications to MediaWiki will be developed during this phase.

July 31st to Aug 15th - Finalization •	Integrating all the developed modules and features •	Manual and Documentation •	Testing and debugging •	Finalization

NOTE: The workflow scheme is tentative and is subject to change.

About Me
I am a 3rd year Undergraduate Student at The LNM Institute of Information Technology, Jaipur pursuing Bachelor of Technology in Computer Science and Engg. Experience in multiple programming languages, C, Java, PHP, JavaScript, and MySQL. I am also experienced in developing web applications/UI using Bootstrap 3.x. I am also experienced in various CMS especially WordPress. I enjoy exploring Open-source communities and I am a fan of Mozilla and WordPress. I also love to explore Adobe Photoshop in my free-time. I maintain and write articles my website Gizmantra to provide useful & interesting geeky information and news to people I am new to open-source community contribution although I am involved in Mozilla and WordPress communities. But I am looking forward to contribute more to the open-source world and be a helping hand for the communities. Beside all technical hobbies, I love to watch movies (which does make sense) and I am big fond of music especially rock and retro era. Plus, I love to play multiplayer games in my free time with my friends.

Participation
By the end of April 2014 we will have our summer vacation which will last till July. So, I can assure 30-35 hours of work per week for this project and try to complete it in time. I will start maintaining a blog to communicate about my progress. I will stay in regular contact with my mentors, Markus Glaser and Mark Hershberger to seek help whenever I am stuck and for discussing my work and progress.

Past experience
•	Gizmantra Admin and Writer for the website.

•	LNMIIT’s annual fest Vivacity website Developer of the fest website for Vivacity ‘13

•	NPPKD Webmaster for the website.

•	Developed a social networking platform Based on Twitter Bootstrap framework

I am interested to work with the open-source community and give my best contribution to the community.