Giter Site home page Giter Site logo

tom-james-watson / breaktimer-app Goto Github PK

View Code? Open in Web Editor NEW
915.0 9.0 72.0 8.06 MB

Manage periodic breaks. Avoid eye-strain and RSI.

Home Page: https://breaktimer.app

License: GNU General Public License v3.0

JavaScript 22.80% TypeScript 73.51% HTML 0.72% SCSS 2.97%

breaktimer-app's Introduction

BreakTimer App - https://breaktimer.app

๐Ÿ”จ Looking for contributors ๐Ÿ”จ If you feel like getting involved, please get in contact!

BreakTimer is a desktop application for managing and enforcing periodic breaks. BreakTimer is available for Windows, macOS, and Linux.

BreakTimer allows you to customize:

  • How long your breaks are and how often do you wish to have them
  • Whether to be reminded with a simple notification or a fullscreen break window
  • Working hours so you are only reminded when you want to be
  • The content of messages shown during breaks.
  • Whether to intelligently restart your break countdown when it detects that you have not been using the computer

Installation

Screenshots

break panel

settings panel

notification

FAQ

Why can't I see the app in the tray?

Some operating systems, such as Linux distributions running plain Gnome (e.g. Fedora) or Pantheon (e.g. Elementary OS), don't support system tray icons. In this case, simply re-run the app to open the settings window. You will lose access to certain functionality only available in the tray menu, but at least this workaround lets you use the app.

Is there a way to control the app via the command line?

On Linux, if you run the app via the command line there is some basic support for command line arguments:

Disable breaks:

breaktimer disable

Enable breaks:

breaktimer enable

How can I pass you my log files to help you debug an issue?

You can find the log file for BreakTimer here:

Linux: /home/<USERNAME>/.config/BreakTimer/logs/main.log

macOS: /Users/<USERNAME>/Library/Logs/BreakTimer/logs/main.log

Windows: C:\Users\<USERNAME>\AppData\Roaming\BreakTimer\logs/main.log

You can either upload this to a cloud service such as Dropbox or Google Drive and enable public sharing, or you can email the file as an attachment to [email protected]. The log files do not contain any personally identifying information.

Please try and include a timestamp for roughly when you have seen the issue so that I can find the relevant place in the log file.

How can I hard reset the app's data

In case a bug has left the UI in an unrecoverable state, you can reset the app data by exiting the app, deleting the below folder, and starting the app again.

Linux: /home/<USERNAME>/.config/BreakTimer

macOS: /Users/<USERNAME>/Library/Logs/BreakTimer

Windows: C:\Users\<USERNAME>\AppData\Roaming\BreakTimer

Development

See ./DEVELOPMENT.md.

breaktimer-app's People

Contributors

arthurmcgregor avatar benomi avatar dependabot[bot] avatar idochetrit avatar jaysn avatar nc7s avatar rafadlis avatar sanidhya-saraswat avatar tom-james-watson 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

breaktimer-app's Issues

excessive logging to journald on kde

The app works well but it writes huge amounts of logs. Is there a way to reduce the logging level?
I installed the app via snap and I don't find any logs under ~/.config but there are lots of logs in journald of the type:

mars 19 13:28:03 13:28:03.692 โ€บ { state: 'idle' }
mars 19 13:28:03 13:28:03.693 โ€บ {
mars 19 13:28:03 lastTick: '2020-03-19T12:28:02.693Z',
mars 19 13:28:03 breakTime: null,
mars 19 13:28:03 secondsSinceLastTick: 1,
mars 19 13:28:03 idleResetSeconds: 300,
mars 19 13:28:03 breakSeconds: 1680
mars 19 13:28:03 }

These repeat every single second.

ps. really like the app otherwise.

Allow postponing from the break screen

Sometimes I miss the chance to click the pre-break notification to postpone it. And the break screen shows with only one button: โ€œEnd Breakโ€.

Would be nice to have a โ€œPostponeโ€ button there as well.

Disable Window > Close when Allow end break off

You can end break manually using menu bar even if allow end break is turned off. Please can you disable it when "allow end break" setting is off. Menu bar shows with Alt keypress. Sorry I can't help myself to go for it all the time.

After resume from sleep, breaktimer *always* starts a break.

After resume from sleep, breaktimer always starts a break.

  1. Put computer to sleep.
  2. Wait for at least a break-interval-duration (25 minutes, in my settings)
  3. Awake the computer, it starts with an immediate break.

In practice this means that in the morning, or after lunch, the first thing I see when starting my computer, is a break. This is obvious unwanted behaviour.

This is on:

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04 LTS"
NAME="Ubuntu"
VERSION="20.04 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal

I cannot find a way to export a detailed report for breaktimer, there seems to be no commandline flag or other window to show version details. Please point me at how to get such info, if required.

I presume the internal timer calculates the interval wrong, and does not take sleep into account.

Idle reset reportedly not working on Windows

A user contacted me via email to report a bug where idle reset allegedly just straight up does not work.

Will need to get round to investigating (Windows is the OS I use least).

[macOS] Idle reset is triggered by lock screen below triggering threshold or if disabled

Overview

  • Even when I turn off Idle reset in the app it appears to still apply
  • Idle reset is triggered below the threshold I set for locking the screen

Observations

I saw a possibly related issue for Windows as #23. In particular this comment asking for some background info: #23 (comment)

If you lock your screen then immediately unlock it, does it reset?

In my case on macOS, yes.

If so, turn on the idle reset notification option, and it should tell you in the notification how long you were considered idle. How long does it say?

00:00:06 give or take, which I assume is seconds. I configured Idle reset to use 15 minutes.

Version info

BreakTimer 0.7.0
macOS Mojave 10.14.6 (I'll probably update this to the latest soon though.)

Start Break Now/Syncing versions

I started out by using the Chrome extension of Break Timer since that is where I found it. Then I decided to switch to the desktop version. However, there are some things that I really liked about the Chrome Extension version that don't seem to be available on the Desktop Version. The feature that I probably like most on the Chrome Version that isn't available on the desktop version is the easily-accessible "Start Break Now" option. I think it would be great if users were able to use this feature on the desktop version as well. If this isn't an option I think that at the very least users should be able to sync the chrome extension and the desktop version. Thus if you took a break using one version, the other would recognize that a break was taken and reset the timer. Syncing the versions may also solve some other bugs such as still being able to work on a browser through the taskbar even if the desktop version is running breaktime mode.

App window is not shown in dev mode on Windows

Hey Guys,

I am using the breaktimer-app for some days now. So I also wanted to try contribute to this cool open-source project. But unfortunately I am having some trouble setting it up on my mashine.

What I did:

  1. Forked the repo
  2. Cloned the repo locally
  3. yarn install
  4. yarn dev

What happens:
I am getting no errors in the console. The build works fine. Electron gets also startet, I can see a process in my process monitor. But the app window does not open. I also can not force it into the front.

grafik

I am developing on a Windows 10 mashine.

Hopefully someone can help me with this issue. Looking forward to support the project ๐Ÿ˜

How to start breaktimer in background silent?

I have added breaktimer in Linux to autostarts app but when I login I see settings windows every time.

Is it possible to auto start breaktimer silent in Linux? (only showing system tray)
Something like

breaktimer --in-background

Thank you for this app and for "Not allow end breaks"

No Break Notification

The break timer ends (30 mins) and then restarts itself without any further notification, when I modify it to 1 min break, it's fixed!

Notarize the macOS dmg

I tried to install this on a mac and received this error.

"BreakTime.app" can't be opened because Apple cannot check if for malicious software.

I am pretty new to mac and will investigate possible alternative install options but thought you may like to know.

OS: macOS Catalina v10.15.3
Software version: latest (unsure of version number)

Screenshot 2020-02-12 11 28 03

Alleged catastrophic crash that locks I/O

Im not sure the app is causing this but sometimes the computer freezes and does not respond to
mouse or keyboard. It happened once during a break. I notice the following in /var/log/syslog

Feb 19 21:07:35 Ubuntu-Bill-PC gnome-shell[1476]: [AppIndicatorSupport-WARN] Item :1.61/org/ayatana/NotificationItem/BreakTimer1 is already registered
Feb 19 21:08:35 Ubuntu-Bill-PC gnome-shell[1476]: [AppIndicatorSupport-WARN] Attempting to re-register :1.61/org/ayatana/NotificationItem/BreakTimer1; resetting instead
Feb 19 21:08:35 Ubuntu-Bill-PC gnome-shell[1476]: [AppIndicatorSupport-WARN] Item :1.61/org/ayatana/NotificationItem/BreakTimer1 is already registered

Support automatic disabling of breaktimer in certain conditions

I forget to disable when I'm presenting sometimes which can be embarrassing when my entire screen is suddenly consumed in green along with a gong sound while in presentation to coworkers or stakeholders.

It would be great to have a setting to "Never interrupt if display presented / mirrored." Otherwise love the app!

No settings GUI on elementary os (built on ubuntu 18.04)

Hi,

I really enjoyed the chrome version of breaktimer, but the desktop version seems not work very well on my linux system. The setting GUI would not pop up no matter how I try to open it. The default alert works.

I tried to install it from snap store and .deb file, but neither of them worked.

Breaktimer version: 0.6.2
My system: elementary OS 5.1 Hera, built on Ubuntu 18.04.3 LTS

I know my information might be limited for debugging, but I'd like to provide more if necessary.

auto-update on windows seems to be broken

Seems to end up with the app effectively being uninstalled. Not sure what is happening there.

Probably easiest to just disable auto-updating for now, or maybe try bumping relevant packages.

app will stop working if idle reset set to zero

I'm having issue #27 too, and trying to disable the idle reset I put 00:00:00 and get an error (screenshot attached), after I click "OK" the error window show up again, blocking me to close the app, a force close it's needed but app does not work even when I force to quit it and reopen it, the error keeps showing up.

Screen Shot 2020-02-11 at 10 38 15 AM

Add "Extend For -> <time>" option to tray

So in the tray icon menu, we can start the break now or reset the break timer period. I think it would be great if we can quickly add another 15 mins to the timer while I'm doing something important. Thanks so much for your great work!

Context menu doesn't work properly on Windows

When I right-click the tray icon on Windows, it seems the menu blinks repeatedly many times a second instead of being rendered. Sometimes after a few seconds the menu appears, most of the time it doesn't and I have to terminate the BreakTimer process.

Sign the windows executable

Code signing certificates are a bit of a mafia and are incredibly expensive. I need to find what the cheapest way to do this is.

Add "Disable For -> <time>" option to tray

I have my postpone break time set to 1hr which is useful to hide notifications during meetings/video calls. I realise I can trigger break postponement via the notification, but often I miss the notification so I would like another way to postpone the break for 1hr. I can use the tray menu to disable breaks entirely, but I would like to be able to postpone breaks (for my custom duration) at any time, rather than having to wait for a notification (which I might miss). The downside to simply disabling breaks is that I usually forget to re-enable them when I return to my desk!

PS Great app - thanks!

Duplicate tray icons

Very Nice app, thanks a lot. It helps me to eliminate eye-strain.

I am using the latest Deepin OS, installed the app in the snap store, found this duplicate tray icons issue when run it form launcher or terminal. right-click and close one will close all. I will try to install other releases version.

image

image

image

image

Ability to set custom sounds for break start and end

Hi, thank you for the great app. I have been looking something to replace gnomo-pomodoro which can run on any linux distros. I was asking if you could implement ability to use custom sound for breaks and end of breaks notifications. Also ability to accept terminal commands like run, start, stop etc, would be terrific.

Break Screen won't release, locks screen

I have been a faithful user of Break Time for quite a while.
After uploading the most recent version (thinking it might take care of the java boot error popup),
after locking the screen for 2 mins, it would not release, and my keyboard and mouse were unresponsive. This happened at least 3 times.
It was hard to get out of the lockscreen, but I was able to ctrl-alt-del and get to the task manager and kill the breaktimer executable so my screen was accessible again.
I had to "disable" breaktimer (which stopped the problem).
I am running:
Windows 10
ver 1909 (OS Build 18363.592)

I have always loved Break Timer (been using for quite a while now) and hope this can be fixed!
I miss using it!
Thanks!

working hours bug

when I enable working hour inside Working hours tab, it doesn't set the period and for every period app always shows "Outside of working hours" (Ubuntu 18.04.4, gnome 3.28.2)

Explore gamification of taking breaks

I often find myself skipping or postponing breaks. I might be motivated to better respect the break time if the app kept score or somehow gave me points/achievements for taking my breaks ๐Ÿ˜Š

I know it sounds silly but it might work.

Give user time to postpone break

Hi,

at the moment, when I get notification about the oncoming break and want to postpone, I have to scramble fast and hope to hit the notification precisely and in time. I would like to be notified about the break much sooner, like 1 minute in advance (ideally configurable) and then once the break really is about to start have more time to postpone before it starts, at least 20 seconds.

Thx.

Feature Request: Re-implement 3 minute delay

Loving the new builds so far (although I had to remove some of the older versions as they weren't uninstalling when new ones came along. I think this is fixed now). One feature I'd love to see implemented is the delay 3 minutes like the browser extension offers. You're doing an awesome job!

Add support for choosing per-machine install

Hi Tom,

Thanks for the brilliant app.

We are facing issue in installing the application as a machine based rather than user based. Could you please advise how to install it as a machine based installation.

After 0.7.2 update - breaktimer doesn't fully cover whole screen

The app has been working perfectly until this new update. Now a break starts, the timer screen only covers one of my two monitors. Or it covers both monitors, but something is still visible, like my taskbar or windows explorer. See screenshot for example. Please fix, thank you.
break

Autofocus end break button on break start

I think it would be cool to be able to bind a key to end the break. Something like if I press enter or esc or space bar or the like, it would end the current break. ๐Ÿ˜„

Add cli commands to disable/enable

Not really an issue, just a question: are there cli commands for Breaktimer?
I'd love to be able to write some kind of script to disable it when I join a video call (especially if I'm screensharing)

Add a confirmation to closing break window when end break disabled

I don't think we should completely remove the ability to end a break, as that basically locks the machine up for the length of the break.

You can still close a break window with ctrl/cmd+w even if end break is disabled, which I think is the right decision, however in this case I think a confirmation window that makes you feel bad should popup. Something like - "You asked to disallow ending breaks early - are you sure you want to close the window?".

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.