CherryTomato is Open Source

CherryTomato is open source. I put it on Google Code a while ago but I didn’t want to make too much fuzz about it because I hadn’t tried to build it on another machine and generally wasn’t too happy with the state of the code. That hasn’t changed 🙂
However, I decided to announce it now and let you try it out if you want. Many people have asked me to make it open source – it will be fun to see if anybody actually wants to contribute. I have a number of plans for it as I have stated here from time to time, but as it is not my highest priority I only put in a few batches of work every now and then.
So if you are interested, go to and get the source.
This entry was posted in CherryTomato, Productivity. Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.


  1. Posted November 1, 2010 at 11:08 am | Permalink

    Hi – I downloaded the code last night and tried to compile it.

    The Firewall cpp project wouldn’t compile, and the Messenger project was missing Interop.Messenger.dll – is this a wrapper you have created ? Are you able to include it in the project?



  2. Vasiliy
    Posted November 1, 2010 at 11:44 am | Permalink

    I’m experiencing OS lagging when CT is working for several days. Now I’m going to find the cause. Thanks! I’ll definitely try to contribute fixes for all the stuff I suffer from.

  3. Vasiliy
    Posted November 1, 2010 at 1:37 pm | Permalink

    I suspect my lags are due to local time changes. I changed local date several times, after that I had to reboot in order to get system smooth running. I have several propositions which I can implement myself.
    1) Use System.Threading.Timer instead of infinite loops with Sleep() inside. We might avoid some lags.
    2) Make the 0.25 sec interval configurable in settings dialog. (I’d like to have 1 sec interval or event 2 sec).
    3) Make the mouse/keyboard activity recordings option. Create a checkmark in settings dialog “Record and show mouse/keyboard activity”. I think this is redundant piece of CT. 🙂
    4) Enhance TaskRegistration class to store process name. Enhance IProcessAndWindowSpy to return not the string but TaskRegistration. Enhance evaluation window tasks list – add one more column for process executable.

    What way of patching are you planning to do? Should I send them by email, or commit to SVN, or what?

  4. crad
    Posted November 1, 2010 at 2:33 pm | Permalink

    I love the mouse/keyboard activity and I hope that you or someone can implement a feature:
    When I select an entry in the tasklist, it should highlight in the mouse/keyboard box when this task was active. That way I could see if I was typing in my email program or in my editor. It could paint the background red or something.

    Thanks for the app, I love it!

  5. Kristian
    Posted November 1, 2010 at 9:10 pm | Permalink

    the firewall project is stalled a bit – I am thinking of changing it from a real firewall to a simple modification of the hosts file instead. What I would really like is to be able to make a white-list but I don’t know any way to do that right now..
    As for the dll, I thought I had included it but it should be in the installer package at least..

    The options you mention are what I would qualify as “super-user” options and I am thinking we could keep them in the configuration file for now? I don’t want the user interface to be too confusing to normal people 🙂
    I haven’t really planned anything regarding patching – it depends on how much people are going to be contributing I guess. For now, you can email me and I will do it manually.

    that is an interesting idea. I do think it would be something that is fun to try but not really super useful in time, but I could be wrong. I will consider it. And thanks 🙂

    Finally, I would appreciate to keep the more technical discussions on the project page – I think it works better for it.


One Trackback

  1. […] This post was mentioned on Twitter by Kristian Dupont, Simon Whittemore. Simon Whittemore said: Great news, downloading the source now RT @pomodorotool: CherryTomato is Open Source: […]

Post a Comment

Your email is never published nor shared. Required fields are marked *


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>