Code Monkey home page Code Monkey logo

thomas's Introduction

thomas Build Status

Simple pomodoro timer

Usage

Download the latest release!

Features

  • 25/5 minutes interval by default, but you can configure this
  • Built-in configurable keyboard shortcuts
  • Minimal log that contains all completed intervals counts per day
  • Tray icon and progress bar
  • Dark mode, supports automatically macOS Mojave appearance

Shortcuts

  • CommandOrControl+Alt+T — show application
  • Escape — hide application
  • CommandOrControl+Enter — start/cancel timer

Contribute

Fork this repository, clone to your local device and install dependencies:

npm install
npm start

If you use Ubuntu or Debian, you also may need to install nodejs-legacy that creates node symlink:

sudo apt-get install nodejs-legacy

License

MIT

thomas's People

Contributors

andrepolischuk 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

thomas's Issues

Restart vs Reset after break activity

Not really a bug, I couldn't figure out the difference between Restart and Reset after a break is finished, so just posting it here for anyone else also curious.

Restart just starts the timer again with the last selected time: e.g: 25 minute work, with 5 minute break. Whereas Reset lets you configure the timer settings before starting.

Support for dark mode

Would be great if there was support for dark mode.

As-is OSX Mojave made it super-easy to desktop/appearance to Dark Mode for mac apps.

Program Crashes when space is entered as a hotkey.

After entering space as a hotkey to pause and play the timer, the program crashes and does not recover. This error persists after uninstalling and reinstalling thomas. The error appears again immediately after closing it and thus interaction with the program is impossible. You can still X out of the program without issue.

image

System info:

  • Microsoft Windows 10 Enterprise Version 10.0.18362 Build 18362.
  • NPM version 6.9.0

There is no package-lock.json file

Everytime I update the repo using npm update, npm always created a package-lock.json file. This file is supposed to be committed according to this.

Please commit that and I'll fetch it.

Thanks for your awesome app 😁

Package vulnerabilities

Cloned repo, run npm install, got:

> electron-builder install-app-deps

  • electron-builder version=20.38.5
  • loaded configuration file=package.json ("build" field)
  • no native production dependencies
added 734 packages from 463 contributors and audited 2781 packages in 44.352s
found 112 vulnerabilities (60 low, 17 moderate, 35 high)

Result of running npm audit fix:

$ npm audit fix
added 1 package from 2 contributors, removed 3 packages and updated 18 packages in 7.871s
fixed 111 of 112 vulnerabilities in 2781 scanned packages
  1 package update for 1 vulnerability involved breaking changes
  (use `npm audit fix --force` to install breaking changes; or refer to `npm audit` for steps to fix these manually)

Seems like there was one low severity vulnerability left. Results of npm audit report:

$ npm audit
                                                                                
                       === npm audit security report ===                        
                                                                                
# Run  npm install --save-dev [email protected]  to resolve 1 vulnerability
SEMVER WARNING: Recommended action is a potentially breaking change
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ Low           │ Prototype Pollution                                          │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package       │ yargs-parser                                                 │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ electron-builder [dev]                                       │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path          │ electron-builder > yargs > yargs-parser                      │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info     │ https://npmjs.com/advisories/1500                            │
└───────────────┴──────────────────────────────────────────────────────────────┘


found 1 low severity vulnerability in 2797 scanned packages
  1 vulnerability requires semver-major dependency updates.```

Error with tray icon

Clicking on the button in the tray produces an empty black box. When I try to unenable the tray icon, I get the following error:

A JavaScript error occurred in the main process
Uncaught Exception:
TypeError: Cannot read property 'show' of undefined
at Array.data.subscribe (/home/erhoppe/thomas/app/createWindow.js:112:15)
at notify (/home/erhoppe/thomas/node_modules/dact/dist/index.js:65:18)
at merge (/home/erhoppe/thomas/node_modules/dact/dist/index.js:83:9)
at /home/erhoppe/thomas/node_modules/dact-electron/dist/index.js:35:16
at Object.emit (/home/erhoppe/thomas/node_modules/dact/dist/index.js:115:12)
at EventEmitter. (/home/erhoppe/thomas/node_modules/dact-electron/dist/index.js:20:12)
at emitTwo (events.js:125:13)
at EventEmitter.emit (events.js:213:7)
at WebContents. (/home/erhoppe/thomas/node_modules/electron/dist/resources/electron.asar/browser/api/web-contents.js:266:13)
at emitTwo (events.js:125:13)

Exiting the error, the icon is indeed removed from my tray.

I'm running Ubuntu 16.04.4 LTS (xenial).

Escape key unusable outside thomas

When thomas is open, I can't use the escape key for anything else... it's kind of intrusive/blocker (considering that shortcuts aren't customized by the user).

Using Ubuntu 18.04, thomas v1.7.9.

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.