MouseTracks is an application designed to track and visualize mouse movements, clicks, keyboard activity, and gamepad inputs over time. It's designed to be unobtrusive, allowing you to leave it running indefinitely - even for years - and return later to render high-quality, colorful visualisations of the data.
-
Continuously monitors mouse movements and clicks, with older movements gradually fading out to maintain a clear view of recent activity.
Keyboard heatmaps and gamepad inputs are also supported.
-
The GUI includes a real-time preview of tracking data, combining thumbnail renders with live input.
-
Renders are generated at full quality, regardless of resolution changes. Each input type is tracked independently and merged during the render process.
-
Mouse and gamepad thumbsticks: Track maps and position heatmaps.
-
Mouse clicks: Heatmaps.
-
Key presses: Heatmap overlaid on a keyboard image.
-
(Gamepad button rendering is not yet supported.)
-
-
Includes predefined and customizable color maps for all render types.
-
Use separate tracking profiles when different applications (as defined in
AppList.txt
) are detected.(Manual updates required for new applications.)
-
Tracks activity across multiple monitors. If linked to a specific application, the rendering bounds will automatically adjust to the application's window geometry.
-
Designed to run silently in the background. Closing the GUI will minimise it to the System Tray.
-
The application was designed with multiple components that communicate but run independenantly of each other, ensuring the live tracking remains fully stable, even during resource-intensive tasks like rendering or waiting on GUI operations.
Currently, only Windows is supported. Contributions for Linux or macOS support are welcome!
Launch MouseTracks.exe
from anywhere. Recommended for ease of use.
Build it using build.bat
, or download it from the releases (available with v2.0).
Recommended if running the code locally.
- Run
python -m venv .venv
to create the virtual environment with Python 3.11 or above. - Run
launch.bat
.
Run launch.py
.
Ensure all modules in requirements.txt are installed.
The 1.0 version is no longer supported. However it may receive minor updates to the launch process to bring it in line with v2.0.
start_tracking.py
: Run this to start recording data.generate_images.py
: Script for rendering visualisations from the saved data.
I didn't have any plan of what it might look like, so I gave a vague prompt to Copilot to see what would happen.
Can you generate me an icon for my mousetracks app? It records clicks, cursor movement, keyboard presses, gamepad data, etc.
This was the first result, my partner loved it and I think it captures the essence of the application really well.