Skip to content

janmechtel/rockettype

Repository files navigation

RocketType

Windows typing tool to fix typos and record statistics like WPM.

RocketType Screenshot

The log file can be imported into other software like Pandas, Excel, PowerBI etc. to calculate statistics over time etc.

If you are looking for a particular feature, please create an issue.

Installation

  1. Download & Install RocketType_vx.x.exe
  2. RocketType will run after installation
  3. To run again: type RocketType in Windows Start menu
  4. Optional: add to your autorun (Win+R type shell:startup + drag the RocketType shorctu into the folder

Logger

Each keypress will be stored like this:

time delta key application
1598479190.443632 811 'hidden' Notepad.exe
  • time is epoch seconds
  • delta are the milliseconds since the last keypress
  • key is 'hidden' for each key press, unless there is a output/DEBUG/folder.
  • application is the name of the forgrounds window procress

Hotkeys with notifications

  • Ctrl+Alt+R - Toggles recording. Use it to temporarily disable the recording for passwords and such,
  • Ctrl+Alt+T - Shows statistics
  • Ctrl+Alt+X - Exits

Statistics

Show

Press Ctrl+Alt+T it will return

2020-08-26    70
2020-08-27    65
2020-08-28    74
2020-08-29    75
Name: WPM, dtype: int32

WPM (Words-per-minute) calculation

  • ignoring deltas >2 seconds (probably a deliberate pause)
  • 60 seconds / (delta / 1000) / 5 (average english word length)

TODOs

The current scope is convenient and safe logging for statistics and personal data collection. See open issues

Epic I: Auto-Correct

Typos are a big slow down for many typists. Auto-Correct is a way to combat that.

  • Show most common typos? (Idea: Learn typos on backspace presses)
  • Auto-correct typos - probably this can be more aggressive compared to other tools.
  • Suggest corrections on words that a further away not only the last word like other tools
  • Approximate typing let's you really mess up the word you are typing, similar to swipe typing on mobile, which doesn't need much accurary to figure out the word you mean

Auto-Correct Tools for inspiration

Epic II: correct finger?

For faster touch typing the correct finger should be used. However, to unlearn using the wrong finger is quite a challenge, especially when the habit is in muscle memory already. The idea is to:

  • Record a webcam shot on each keypress
  • Analyze whether the correct finger was used to press the key either through openCV or deep learning
  • Prevent the wrong key to register

Technique tools for inspiration

Websites

Run locally

  1. Install Python 3
  2. Clone Repository
  3. Install requirements: pip install pynput win10toast PyQt5
  4. Run python startkeylogger.pyw
  5. Optional: add to your autorun (Win+R type shell:startup + right-click drag logger.pyw into the folder and select "Create shortcut here"

Debug mode: Create a DEBUG folder mkdir output\DEBUG (optional)

DISCLAIMER: In Debug mode all keypresses are logged, including passwords etc. See: Avoid storing passwords

How to release

  1. Install NSIS (?)
  2. Make sure you hack pyapp.nsi as descriped in the my_pyapp.nsi
  3. Modify your local pynsist/wheels.py as described here
  4. python -m nsist installer.cfg
  5. Create a new release and upload the .exe

Troubleshooting

  • Check exceptions %LOCALAPPDATA%\Programs\RocketType\RocketType
  • Try to run via python.exe instead of pythonw.exe to see standard out
  • add a DEBUG/ folder to %LOCALAPPDATA%\Programs\RocketType\RocketType

About

A windows keylooger to track typing statistics like WPM

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors