User:Nasirkhan/Summer of Code 2013

From mediawiki.org

Project proposal for the GSoC 2013.

jQuery.IME extensions for Firefox and Chrome[edit]

Name and contact information[edit]

Name: Nasir Khan

Email: nasir8891@gmail.com

IRC or IM networks/handle(s): nasir8891

Location: Dhaka, Bangladesh

Typical working hours: 6pm to 2am

Synopsis[edit]

The JQuery.IME input method library is a part of the UnversalLanguageSelector extension. Along with this it can be used with any type of web applications. Currently it supports more than 150 languages and this number is increasing on a regular basis. It is a great tool who wants so support multiple input method for their own applications. Although it can be used with all type of web applications but it is not used by every one and also not possible at once.

It could be very useful for the user who wants to write in their own language in Internet. This user demand can be achieved if we can enable this feature in the web browser that they are using. So they do not have to wait for the website/application developers who did not used this library. The users can just turn the library on and off to enable his/her desired keyboard layout.

The goal of this GSoC project is to make available this JQuery.IME to the user via the browser extension. Chrome and Firefox are the most popular web browsers at this moment. Through this project i am going to develop a Chrome Extension and a Firefox extension where all the features will be available that the JQuert.IME if providing. These extension will be developed in such a way that future features can easily be implemented. Regarding this issue a bug was filed at bugzilla (Bug ID 46647).

Deliverables[edit]

Required deliverables[edit]

  • Extension will be able to load the library and JQuery.IME can be used form any text input area
  • Use the same keyboard shortcut to enable and disable extension
  • Make the extension/addon available via related Extension Gallery (like Chrome Web Store, Mozilla
  • Store the settings in the user preference page
  • Add option to update the base library by minimal manual effort.
  • Confirm that the extensions is working properly in the mobile version of Chrome and Firefox
  • Add a toolbar button to display the status of the extension (Enabled for the current site or not)
  • Add an option to use this extension offline.
  • Publish the complete development documentation and user guide

Optional deliverables[edit]

  • Update the Extension user interface (After the initial development we may ask for the design suggestions)
  • Store user selection for multiple sites in their user preference and sync via multiple device
  • Load specific language and/or keyboard layouts
  • Internationalize the extensions so that other language users can use them easily


Long term plan (After GSoC)[edit]

  • Develop extension for Safari and Opera. Here the target is the mobile user. After the GSoC i will try to port same features for the mobile browsers.
  • Complete the optional deliverables, if any of those will not completed by the timeline.

Project schedule[edit]

Community bonding Period

  • Add/ Remove the feature list of the extensions
  • Finalize the milestones
  • Check the existing open source solutions, (primary research shows that there are a few similar extensions available in the extension galleries)
  • Finalize the development road map
  • Study the JQuery.IME base structure, this will help to extend the extension for offline use and other features as well
  • Study the Chrome and Firefox extension development best practices and identify the main obstacles

Milestone 1: 3 weeks

Develop the Chrome Extension

  • Publish the Chrome Extension with the Required deliverables
  • Apply to make available via Chrome extension gallery

Milestone 2: 4 weeks

Develop the Firefox Addon

  • Publish the Firefox Addon with the Required deliverables
  • Apply to make available via Addon gallery

Milestone 3: 1 weeks

  • Confirm that the extensions has published to the related extension gallery
  • Work on the optional features

Milestone 4: 3 weeks

  • Include all the optional features for the Chrome and Firefox Extension.
  • Fine tune all the features

Milestone 5: 1 weeks

Documentation

  • Compile all the documentations and ready to publish
  • Publish the user guide (multilingual)

Note - In all the milestone stages i will ask the mentor(s) to review the code and as well as the development approaches

Exceptions

- Will join the Amsterdam hackathon from 24-26May, there is a chance to discuss in details with the mentor.

- I am going to attend the Wikimania 2013 so i might not be able to work properly form 6-12 august.

About you[edit]

I am an undergraduate student of United International University, Dhaka, Bangladesh. This will be my last year of my undergraduate course. Computer Science and Engineering is the area of my study. From the very semester i am participating collegiate programming contests as the team leader of my university team. I have participated many national and international programming contests. Then i started to write programs for robots. Participated a national robotics contest and our team achieved the 3rd prize there. Later on i participated project based contest. In 2010 our team became the champion in Citi Financial IT Case Competition organized by Citi Bank NA.

I am involved in web development since the past 3 years. Along with the coding i am also interested in web designing. My favorite topics are JavaScript, CSS and HTML.

I am working as the integration manager of Directorate General of Health Services (DGHS), Bangladesh. Currently i am involved in a few projects like the data visualization on GIS system, developing this solutions based no the Geo Server and PostGIS database; clustering the central DHIS2 (District Health Information Software) system and data synchronization between different servers via DHIS2 web API. At the same time we have a plan to integrate the OpenMRS with the DHIS2 system as well as the GIS platform. Here i would like to mention that all of these projects will be open source and within a few days they will be published via Github. You can see some of my contributions in my Github profile.

I have developed a number of Joomla extensions and few are published on the Joomla extension directory, others are special purpose and not published via the JED. The published extensions are developed using the Picasa Web API and Instagram API.

I am working as a feature reporter of the daily Prothom Alo (http://prothom-alo.com), one of the most popular national daily in Bangladesh.

Participation[edit]

Though this project i am going to develop 2 browser extensions. The primary plan is to publish the extension as soon as i can integrate the basic options. Then other features will be integrated and these updates will be available via the related extension gallery. The updates will be informed via the mailing list so other users can join the testing stage.

Past open source experience[edit]

I am a contributor of Wikipedia for about 5years. I am mainly active in Bengali Wikipedia and Wikimedia Commons. I am an administrator of Bengali Wikipedia. I am one of the founding members of Wikimedia Bangladesh.

I am working as a joint deputy secretary of Bangladesh Open Source Network and one of the founding members of this organization. Here i am responsible for arranging out reach events and maintain a free online support mailing list for open source software. I developed a churn management software which was open sourced and using at our university for study purpose. I was the coordinator of our university open source network. For last 3years i am organizing Software Freedom Day at Dhaka and coordinating to arrange the event in other parts of Bangladesh.

For last one year i am working with the Directorate General of Health Services (DGHS), Bangladesh. Here i have deployed DHIS2 software and recently working on OpenMRS integration. At the same time i am coordinating there some other php based data entry and reporting application. Most of my projects are hosted at github. Along with my projects i do contribute to some other open source projects at Github.

Along with the development i also contribute to translate opensource applications. I contribute to the Translatewiki.net and participated few translation rallies. I have participated in translation to Joomla, Wordpress, Ubuntu, Linux Mint, and maty other related softwares. I have published a Wikipedia user guide and distribute the published version free of cost and the pdf is also available at my blog.

Any other info[edit]