Implement Pomodoro timers

Maybe this is out of the project scope. But could be nice to include some Pomodoro technique features.

The app currently supports a Stop Watch, so, it may be scaleted to a 25 Minutes Timer (or any timeout) with a big display of the currently working on activity. Or something to remind the user what supposed to be working on.

Definitely a good idea!

In the spirit of Single Responsibility principle, I’ve been rethinking this as an integration of a multiple tool set. This post describes how to setup GNOME Pomodoro with TaskWarrior and TimeWarrior. It occurs to me, that instead of hooking with TimeWarrior it could create a new event on ActvityWatch. So this feature could better be a new CLI Watcher and then integrate GNOME Pomodoro, Sticky Notes, TaskWarrior and ActivityWatch.

Either way, the feature has no votes so it could be much effort to include it in the main app. I’ll be happy to start this new development in my free time as personally would love to have something like that on my time reports

I would love to see Pomodoro implemented to ActivityWatch. I basically use it for everything and improves my performance. Take a look at this app, PomodoroLogger, some of its features I think compatible with ActivityWatch, and would be great if implemented in the project.

1 Like

I think the reports could be integrated some how on ActivityWatch, the productity measure is another related feature that could benefit from such kind of report. The basic Pomodoro record can be live on it’s own bucket supported by a Pomodoro like watcher. I think it could be a PomodoroLogger’s fork that worked as an ActivityWatch’s plugin what we are looking for.

1 Like

Hey guys!, it’s me again!

So… as mentioned early I’ve been using some third party solutions in order to address my personal requirements. I’ve come to the conclusion that a simple watcher and a special report is all that is needed in order to integrate with other kind of developments, i.e., the current Stop Watch or a third party like Gnome Pomodoro.

Here is a recap of my requirements and my current approaches to address them:

TODO list with Pomodoro tracking requirements

Resolved by GNOME Pomodoro

  • A pomodoro SHOULD be started/paused or stopped from the main menu.
  • The application icon COULD show the pomodoro progress

Resolved by BugWarrior

  • The user COULD set focus on task via the main menu.
  • [Unpublished service] Syncronize TODO list with an external service (like OpenProject)

Resolved by TaskWarrior

  • Sort task by urgency
  • [Hook script] When a Pomodoro is started the must urgent task SHOULD be tracked
  • List pending tasks by project
  • List pending tasks by urgency

That been said i would propose some more specific development for ActivityWatch

Requirements to address by ActivityWatch

ActivityWatch Pomodoro Tracker (Module)

  • Recover, when possible, the task subject and project for the current task from TaskWarrior (use interfaces to extend usage for other user defined TODO services).
  • Export a binary (aw-pomodoro) to send a pomodoro heartbeat to the pomodoro budget. An optional argument could also send a heartbeat for a break.
  • Define a query to get project, task, application, window title, start time, end time, and total duration for activities that intersect with a pomodoro recorded on the pomodoro budget.
  • Create a new report tab with a pomodoro counter and total worked hours / breaks and the involved activities (Salky diagram?)

This pretty much would solve my needs and shouldn’t be a problem to integrate with any other Pomodoro App that supports hooks. Unfortunately PomodoroLogger does not support hooks, but maybe would be easier to have hooks as a PomodoroLogger feature instead of implementing PomodoroLogger current features on ActivityWatch.

1 Like

Pomodoro technique is highly effective as it helps you effectively manage your time and work on a task without distractions. It is also beneficial as it helps you become more disciplined and think spacebar clicker about your work. This technique is designed to combat multitasking and improve concentration.Some Pomodoro Apps are straightforward time management tools — giving you a digital way to track 25 minutes, followed by a 5 minute break.

1 Like

Hey there, may I ask if you can share your alternative solutions to implement these features that can replace ActivityWatch? :grinning:

I haven’t find a propper Pomodoro App yet, my last test was with GNOME Pomodoro, but I just move out of GNOME and I’m still testing options. I’m currently using TaskWarrior with a PomodoroWarrior integration, but is not really good, the is no sound alarm nor continuos tracking.

I have sucessfully integrated TaskWarrior with ActivityWatch with a simple Hook/Watcher, this allows me to start tracking a task with PomodoroWarriors and then start the Watcher that sends the current Task data to ActivityWatch. This is half the way of what I need, I’m just missing the alarm part, and some auto start.

This is the link for PomodoroWarriors: https://github.com/cf020031308/pomodoro-warriors

Addional to PomodoroWarriors, i made a TaskWarrior hook to send data to ActivityWatch, is still a work in progress, but so far it does what is needed.

Yo can check the hook in my GitHub: https://github.com/emirhg/tw-hook-aw-watcher

Just copy the file into .task/hooks/, it may need a wrapper if python with virtual environment is used.

This way I have accomplished to track a task, and associated with my computer activities. It is not yet Pomodoro capable, as PomodoroWarrior has some limitations, but if works!