GSoC 2009/Projects/Remember The Milk plugin for Canola


[edit] Remember The Milk plugin for Canola - GSoC 2009 Project

[edit] Project summary

The main goal of this project is to create a program which allows users to manage personal todo (or task) lists in easy and comfortable way with support of most the of modern features - synchronization, finger friendly interface, tags, integration with other applications.

Program will be implemented as a plugin for Canola. Task lists will be available locally on a tablet and can be synchronized with service.

[edit] Install

Latest version of a plugin is always available at You can install it directly on a tablet.

[edit] Getting the source code

Main project repository is hosted at You can clone repository with the following command:

git clone git://

[edit] Adding RTM plugin to Canola

Assuming you already have Canola working in your system (if not - read this article about how to build it yourself).

Get the source code of a plugin:

git clone git://

Build theme files (example below is for default theme):

cd mainline/data/themes/default/
edje_cc default.edc default-rtm.edj

Move resulting *.edj file to <canola_src_path>/THEMES folder. Copy mainline/canola-rtm folder to <canola_src_path>/plugins folder:

mv default-rtm.edj <canola_src_path>/THEMES
cd ../../../
cp -r canola-rtm/ <canola_src_path>/plugins

Run terra-rescan-collections:

cd <canola_src_path>
terra-rescan-collections -c canola.conf

Now you can run Canola and try out new plugin.

[edit] Progress

[edit] Week #1,2 (May 23 - June 07)

  • Backend which interfaces with RTM API implemented;
  • A simple UI implemented. It allows to browse tasks, lists and search for tasks.

[edit] Week #3,4 (June 07 - June 21)

  • Small amount of work done, mainly code cleanup and optimizations. I had exams at university.

[edit] Week #5,6 (June 21 - Jul 05)

  • an options menu for editing main task properties created
  • new tasks can be added from inside a plugin
  • a backend for storing tasks and lists locally created
  • lists are stored locally and can be synchronized with

[edit] Project Reports