Skip to content

dracan/tomatoad

Repository files navigation

Tomatoad

Tomato

Tomatoad is a cross-platform desktop Pomodoro Timer.

I've recently started using the Pomodoro Technique, and have noticed a huge difference in the amount of work I can get done, due to being a lot more focused and ignoring distractions, eg. emails, Slack messages, etc. Basically a promise to myself that for 25 minutes, everything other than what I'm working on will be ignored. It makes quite a big difference!

Unfortunately, I couldn't find a Desktop Pomodoro app that I was happy with. So I decided to build my own!

This is very much work in progress (at the time of writing this readme, no code has yet been written!). It's going to be written with Electron.

Obviously, having a Twitter account is clearly more important that having actual code! So we can be found on Twitter here.

If you have any ideas or suggestions, then feel free to create a GitHub issue on this.

Bruised Tomatos

Whilst the official technique says that you shouldn't be able to interupt a pomodoro - I think this is unrealistic. But you should be penalised for it. So I'm going to add a concept of a "bruised tomato". So if interrupted - the logs / reports will show this as a bruised tomato. There'll be a bruised tomato icon/graphic to indicate this.

Squished Tomatos

In the same way as you have bruised tomatos above, if you cancel a pomodoro - it'll become a squished tomato.

Local Storage

By default, all your data will be stored locally. But there will be options to sync/backup to remote locations - FTP, Dropbox, etc.

Reports

You'll be able to generate report in both HTML and PDF format.

Installing (manual download, or via Chocolatey)

Currently, pre-build binaries are only available for Windows, but when nearing version 1, I'll create Mac and Linux binaries.

There are two ways to install Tomatoad...

  • Download and run the latest installation executable from our Github releases page.
  • We also publish each build to Chocolatey, so if you have Chocolatey installed, you can just run cinst tomatoad from your command line.

Building from Source

  • Install NodeJS
  • Clone this repository
  • npm install
  • npm run compile
  • Finally npm run dev to run

This will then live refresh, meaning that you can edit the code, and the app will refresh as soon as you save the file without having to restart the app.

Building installer

  • Install NodeJS
  • Clone this repository
  • Run cake.ps1