User:Nasirkhan/Summer of Code 2013

Project proposal for the GSoC 2013.

Name and contact information
Name: Nasir Khan

Email: nasir8891@undefinedgmail.com

IRC or IM networks/handle(s): nasir8891

Location: Dhaka, Bangladesh

Typical working hours: 6pm to 2am

Synopsis
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).

Required deliverables

 * Extension will be able to load the library and JQuery.IME can be used form any text area
 * Use the same keyboard shortcut to enable and disable extension
 * Make the extension/addon available via related Extension Gallery
 * Store the settings in the user preference page
 * Add option to update the base library by minimal manual effort.

Optional deliverables

 * Add a toolbar button to display the status of the extension (Enabled for the current site or not)
 * Store user selection for multiple sites in their user preference

Long term plan
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.

Project schedule
Community bonding Period
 * Add/ Remove the feature list of the extensions
 * Finalize the milestones
 * Finalize the development roadmap

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: 3 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