{"id":13753161,"url":"https://github.com/jjmojojjmojo/break-timer","last_synced_at":"2026-01-22T21:29:00.110Z","repository":{"id":74281671,"uuid":"132527628","full_name":"jjmojojjmojo/break-timer","owner":"jjmojojjmojo","description":"A MacOS statusbar application that reminds you to take a break.","archived":false,"fork":false,"pushed_at":"2018-05-21T22:04:21.000Z","size":1137,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-16T05:32:34.885Z","etag":null,"topics":["break","pyobjc","python","rumps","timer","work-life-balance"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jjmojojjmojo.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-05-07T23:33:00.000Z","updated_at":"2022-01-25T21:13:00.000Z","dependencies_parsed_at":null,"dependency_job_id":"2961f096-5c24-4a37-9b79-371f3701ce7f","html_url":"https://github.com/jjmojojjmojo/break-timer","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jjmojojjmojo%2Fbreak-timer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jjmojojjmojo%2Fbreak-timer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jjmojojjmojo%2Fbreak-timer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jjmojojjmojo%2Fbreak-timer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jjmojojjmojo","download_url":"https://codeload.github.com/jjmojojjmojo/break-timer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253321826,"owners_count":21890474,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["break","pyobjc","python","rumps","timer","work-life-balance"],"created_at":"2024-08-03T09:01:17.428Z","updated_at":"2026-01-22T21:29:00.067Z","avatar_url":"https://github.com/jjmojojjmojo.png","language":"Python","funding_links":[],"categories":["Productivity"],"sub_categories":["Timers \u0026 Stopwatches"],"readme":"===========\nBreak Timer\n===========\n\nWhat Is?\n========\nA simple MacOS application that reminds you to take a break.\n\nBackground\n==========\nThis application is built using `rumps \u003chttps://github.com/jaredks/rumps\u003e`_ (*Ridiculously Uncomplicated Mac os x Python Statusbar*).\n\nRumps is a lightweight wrapper around pyobjc, allowing for easy creation of simple MacOS applications that exist in the status bar in python.\n\nThe application was developed on MacOS 10.11.6. It should run on other versions of MacOS (OS X) 10.7 and higher (untested!). \n\nThe underlying bits and pieces were installed using MacPorts.\n\nOverview\n========\nWhen launched, the application shows the \"wind\" icon in the status bar. \n\nThe work timer starts immeadiately. After 60 minutes, a notification pops up, telling you to take a break. You can click on the notification, or the \"Take a Break\" menu item to tell the app you are taking its advice.\n\nThe application will \"nag\" you more frequently after the initial 60 minutes - if you do not go on break within 60 seconds, you will be notified again every 60 seconds.\n\nThis way, if you are particularly busy, you can ignore the notification, but you won't be able to completely forget.\n\nWhen you click the menu item or the notification, a modal dialog pops up. Time to get away from your computer. When you return, click \"I'm Back\" to start the work timer over again.\n\nYou can stop the timer at any time, and subsequently retsart it using the menu that comes up when you click on the status bar icon.\n\nThe current time remaining is displayed in the menu as well, in case you are curious - but don't peek too often.\n\nInstallation\n============\nDownload the latest \"break-timer.zip\" release from `the releases page \u003chttps://github.com/jjmojojjmojo/break-timer/releases\u003e`_. Unzip, and copy to your Applications folder.\n\nThe first time you run the app, you will have to go to the Finder and right-click (option-click) and select \"Open\" from the menu. \n\nChanging The Parameters\n=======================\nThis application has support for command-line arguments. You can run the app with arguments from your Applications folder in the terminal like this::\n    \n    $ /Applications/break-timer.app/Contents/MacOS/break-timer -d -t 120 -n 5\n    \nThis will run the application with a two-hour \"work time\" and a five minute \"nag time\". Work time is the time that has to pass before you are prompted to take a break, and nag time is the time between each subsequent notification - so if you ignore the initial notification after two hours, you will be notified again every 5 minutes.  \n\nThe currently supported options are (for the most up-to-date information, run break-timer with the -h switch)::\n    \n    usage: break-timer.py [-h] [-d] [-t WORK_INTERVAL] [-n NAG_INTERVAL]\n    \n    optional arguments:\n      -h, --help            show this help message and exit\n      -d, --debug           Set the debug flag. Will turn on detailed logging.\n      -t WORK_INTERVAL, --work-interval WORK_INTERVAL\n                            Set the number of minutes before getting told it's\n                            time to take a break.\n      -n NAG_INTERVAL, --nag-interval NAG_INTERVAL\n                            Set the number of minutes between re-notifications\n                            when you don't take a break.\n                            \n    \n\n\nDevelopment\n===========\nTo develop this application, you will first need to install python 3.5 or higher.\n\nThen you will need a few extra packages, installable via pip::\n    \n    $ pip install rumps py2app\n    \nThen you can just edit break-timer.py as needed.\n\nTo run the app whilst developing, you can simply run::\n    \n    $ python break-timer.py\n    \n\nBuilding\n========\nTo build the application bundle for basic tests use the following command::\n    \n    $ python setup.py py2app -A\n    \nThe app bundle will be located in the dist folder. You must run it from this location, however you can edit the files and relaunch the app without having to rebuild it.\n\nFor final deployment, use the following commands to clean up any old builds, and build a proper, portable app bundle::\n    \n    $ rm -rf build dist\n    $ python setup.py py2app\n    \nThen zip up the bundle (you can use the Finder's \"compress\" command-click menu option as well)::\n    \n    $ cd dist\n    $ zip -r break-timer.zip break-timer.app\n    \nCredits\n=======\nSource code is copyright Josh Johnson, 2018, All Rights Reserved. \n\nIcons are taken from https://feathericons.com/. Icons were released under an MIT license and reworked for this project.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjjmojojjmojo%2Fbreak-timer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjjmojojjmojo%2Fbreak-timer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjjmojojjmojo%2Fbreak-timer/lists"}