Difference between revisions of "Ideas for Google Summer of Code/Desktop GUI"

From Apertium
Jump to navigation Jump to search
 
(2 intermediate revisions by one other user not shown)
Line 5: Line 5:
 
The point of this project is to create a desktop GUI that works with any of the pairs that you can use through the terminal, and that offers at least the features of [[apertium-html-tools]]. We want users to be able to just click an icon, and have an app come up with a UI similar to https://apertium.org (at least as user-friendly). Document translation should be included (currently turned off on apertium.org).
 
The point of this project is to create a desktop GUI that works with any of the pairs that you can use through the terminal, and that offers at least the features of [[apertium-html-tools]]. We want users to be able to just click an icon, and have an app come up with a UI similar to https://apertium.org (at least as user-friendly). Document translation should be included (currently turned off on apertium.org).
   
The backend should probably use a locally running apertium-apy (since this already handles pipeline management quite well), starting it up
+
The backend should probably use a locally running apertium-apy (since this already handles pipeline management quite well), starting it up along with the app and shutting it down when the app exits. APY is not used on Windows/Mac - but you can just reuse the Simpleton code for those two.
  +
along with the app and shutting it down when the app exits.
 
  +
The app should work cross-platform - Windows, Mac OS X, Linux, etc. While Qt gives you that for free on the GUI side, the package and process handling is not as portable. We'll need 5-6 different systems: Windows, OS X, apt-get, yum, zypper, and dnf - we've got the repositories, so just need to use them. On Linux, this means asking for sudo priviledges to execute the correct install commands, probably via PolicyKit / polkit.
   
   
Line 16: Line 17:
 
** We might need some minor enhancements to apy, to ensure not too many pipelines are running at once and using up all the RAM
 
** We might need some minor enhancements to apy, to ensure not too many pipelines are running at once and using up all the RAM
 
* Nice and functional GUI :)
 
* Nice and functional GUI :)
  +
* Be easy to package (for making .deb/.rpm's)
 
* Translate-as-you-type
 
* Translate-as-you-type
 
* Document translation
 
* Document translation
Line 32: Line 34:
 
==See also==
 
==See also==
 
* [[Interfaces]]
 
* [[Interfaces]]
  +
** [[Apertium_Simpleton_UI]]
 
* http://wiki.apertium.org/wiki/Category:Using_Apertium
 
* http://wiki.apertium.org/wiki/Category:Using_Apertium
   

Latest revision as of 19:21, 17 March 2016

We have several User interfaces, but many of them are either unmaintained, or only work on Android, or require a net connection, or only work with pairs that use only Java-ported modules, or require a lot of terminal work to set up.

The point of this project is to create a desktop GUI that works with any of the pairs that you can use through the terminal, and that offers at least the features of apertium-html-tools. We want users to be able to just click an icon, and have an app come up with a UI similar to https://apertium.org (at least as user-friendly). Document translation should be included (currently turned off on apertium.org).

The backend should probably use a locally running apertium-apy (since this already handles pipeline management quite well), starting it up along with the app and shutting it down when the app exits. APY is not used on Windows/Mac - but you can just reuse the Simpleton code for those two.

The app should work cross-platform - Windows, Mac OS X, Linux, etc. While Qt gives you that for free on the GUI side, the package and process handling is not as portable. We'll need 5-6 different systems: Windows, OS X, apt-get, yum, zypper, and dnf - we've got the repositories, so just need to use them. On Linux, this means asking for sudo priviledges to execute the correct install commands, probably via PolicyKit / polkit.


Features and tasks[edit]

  • Should "just work" for the user
  • Work with package-installed as well as self-compiled pairs
  • Handle startup and management of apertium-apy
    • We might need some minor enhancements to apy, to ensure not too many pipelines are running at once and using up all the RAM
  • Nice and functional GUI :)
  • Be easy to package (for making .deb/.rpm's)
  • Translate-as-you-type
  • Document translation
  • Spelling (could just use locally installed myspell/enchant here) on both input and output
  • Possibly a button to do OCR if tesseract is installed (low priority)

Coding challenge[edit]

  • Install apy and some language pair(s), and make a simple desktop GUI with an in-box and and out-box, which translates as you type using the server on localhost.

Frequently asked questions[edit]

  • none yet, ask us something! :)

See also[edit]