Giter Club home page Giter Club logo

garmodoro's Introduction

Garmodoro

Pomodoro for Garmin devices using Connect IQ

Features

  • A lightweight and clean implementation of the Pomodoro technique.
  • Keeps track of time left in your Pomodoro session, as well as break time and overal number of Pomodoros.
  • Mimics the ticking of a real physical Pomodoro by using short vibrations.
  • Alerts you using vibrations and tones.
  • Supports all Garmin devices using Connect IQ.
  • You can customize many aspects of the technique:
    • length of one Pomodoro (default: 25 minutes)
    • length of the short break between Pomodoros (default: 5 minutes)
    • length of the long break between groups of Pomodoros (default: 30 minutes)
    • the number of Pomodoros in a group (default: 4)
    • the strength and duration of the vibration "tick" (set either to 0 to disable)

Development

To run the project, you can either import the project into Eclipse the usual way. Or use the Makefile:

  • Edit properties.mk file and make sure the paths there are valid on your computer. Change the DEVICE variable if you want/need.
  • Run make run to build the project and run the Connect IQ simulator on the chosen DEVICE.

See https://github.com/danielsiwiec/garmin-connect-seed for the full list of supported targets and variables.

Screenshots

screen shot 2017-05-03 at 00 14 46

screen shot 2017-05-03 at 00 15 17

screen shot 2017-05-03 at 00 15 52

screen shot 2017-05-03 at 00 16 54

screen shot 2017-05-03 at 00 18 01

garmodoro's People

Contributors

klimeryk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

garmodoro's Issues

Preserve pomodoro count per day

Suggestion from a user via email:

I suggestion could be to have a tick box in settings that when checked would start at the Pomodoro number when re-enter the app during the same day. Always reset the Pomodoro number when enter the app on next day; i.e. if left app on Wednesday, then if re-enter on wednesday, keep the number, however if re-enter on Thursday or later, restart at #1

Preloaded vs downloaded watch faces

Hi, thanks for the app!
One request: when i press "Back" while the app is working, it sends me to one of the preloaded watch faces and it doesn't want to show downloaded watch face, which I'm actually using on a permanent basis.
Is it possible to fix this and ensure that the "Back" button sends to the actually applied watch face?

I cannot stop the 5 minutes break/rest

First thanks for working on this app.
I love it.

I found an area that may make your app more adopted.

Imagine this scenario:

  1. Start studying for 25 minutes
  2. the 5 min break start, but you need to finish something that will take you 2 min.

There is no way to decide when the Break start, it simply start inmeadiatly.

I know you may be really busy.

Let me know, if I can cooperate donating a cup of cofee, or if you have 30 min for a video call to give me some code pointer, I will be happy to fix it myself.

Request: Access data from computer?

Hi Igor @klimeryk : I assume this is the same app I downloaded from Connect IQ. It's great for timing focused work/breaks. I'm not sure if it's possible to access the data from the device to use to create reports?

PS: While I would like the background run function, too, the app serves its purpose to make me feel like I'm working. ๐Ÿ˜„

App crashing after first tap

Just downloaded to my Garmin Vivoactive 3 Music. I open up my garmin's activities menu and tap Pomodoro. I see:
"Pomodoro #1
Ready!
13:44" (I guess that's the time)

If I press the action button it sends me back to the activities menu, swiping does nothing, but if I short or long tap on the screen the device vibrates and shows the IQ logo with a (!) bubble. I've only had my garmin for a few days but I'm guessing this means the app crashed.

Changing PomodoroLength from Source breaks timer

I tend to do 50 minute pomodoros, and wanted to see if I could use this app but change the length 'pomodoroLength' and 'shortBreakLength' in properties.XML as seen here.

It seems that making this change breaks the timer in the app on my Garmin device, as it is stuck indefinitely on 25 minutes left. Is there a separate hard-coded integer in the code that needs to be changed to fix this? Appreciate this app exists BTW, I just find scheduling 50+10 minutes much more appealing. Thanks!

Allow toggling sounds from in-app settings

The sound effects are controlled by your global sound settings - so if you've muted your sounds globally, this app will respect that, of course. But it might be better to have a more fine-grained control and some users might prefer to keep sounds enabled (for other activities), while the sounds in the Pomodoro app to be disabled (because they want to use it in a library, etc.).

VA3M: Physical button exits app

Thanks for this useful application! There's one thing which confuses me a bit though:

On my Vivoactive 3 Music, the controls of this application seem to work like this:

  • Touching screen: Starts pomodoro (unexpected but okay)
  • Swiping to the right: Exits application (expected)
  • Pressing the physical button: Exits application (unexpected!)

With e.g. the builtin timer and stopwatch app, touching the screen does nothing, pressing the button starts/stops. Intuitively, I'd expect the same to happen in the pomodoro app as well, so I routinely press the button and lose my state because the app exited.

Add frequency of vibrations to preferences

The original idea was to mimic the ticking of a clock with a slight vibration every second. However, not everyone likes this (and why it's disabled by default). However, as pointed out by a user via email, less frequent vibrations could be a good middle point. For example, every minute. There should be a setting to control this.

Show current time in the app

Hi

I'm using your app on my vivoactive 3, it work great ! Thank for your work !

I don't know if I don't use your app well but I'm facing some problems and maybe you have a workaround.

  • Is it possible to show actual time during a pomodoro / resting timer ?
  • Is it possible to exit app (with button or gesture) and be back at the right moment ? For example, I want to use my watch during resting time but as soon as I exit the app, I lost progression and timer.

Thank again for your work.

Show seconds

I'd like to see the seconds in addition to the minutes. Thanks! Great app :-)

App will exit if swap right

Hi. The app is awesome.But there is one main problem wich can be fixed:App will exit if swap right.Looks like it doesn't work fully asynchronous. Is it possible to fix quick?Thanks!

A Bug ,please fix ASAP!

Thanks for your good work. The 1.2.0 version went on pretty well, until yesterday I update to 1.3.0, the App was crashed and my devise was power off and start again every time when I restart or exit this app. Please fix this bug ASAP, my devise is fenix 3HR.

Too many "tick" vibration after pressing START

Hi klimeryk, I'm using garmodoro on Fenix 3, and after pressing START, I feel like I've had a new heart on my wrist, as the app keep vibrating on and on. I tried to disable it by setting 0 for either strength and duration but it said "invalid value"

Setting and notification during the countdown

Hi,

I would like the meaning of "Duration of the vibration on every tick" ? its minimum no is 80 !! What does it mean ?

Also, during the countdown, the notification of whatsapp to my watch, Fenix 5 is disbable?

Looking for some answer thx a lot

Vibrate only

Fantastic App!!! ๐Ÿ˜„

I'm often working in the library and the beeping is not polite to others. It would be cool if there was a setting "only vibrate".

Back button doesn't work

On my fenix 3 back button on main screen doesn't work, so I need to start/stop timer and then exit.

Improve ergonomics on devices with touch screens

Submitted by a user:

Any chance you can implement a better user flow on the screen touch during a session? When I touch the screen it asks me if I want to reset or exit, a confirmation would be nice on both of these since this screen happens for me accidentally a lot. Also the bottom button takes me back to the time left screen from there because that's the watch's default back button but there could be a resume/back menu item next to the exit restart too. Would it be possible to implement a setting where you would enable getting to this screen with only the top button push. So touching the screen accidentally wouldn't show the menu if that onlyTopButton setting is enabled?

Makes total sense - my devices all have physical buttons (and no touch screens), so I missed how the default behaviour might not be optimal for touch devices. I'll try to look into it - hopefully, the device simulator from Garmin will allow me to work on this without having an actual touch-enabled device ๐Ÿ˜…

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.