Skip to content

MorlachAU/MousePal

Repository files navigation

MousePal by MouseWheel Digital

Python Platform License MouseWheel Digital Buy Me A Coffee

MousePal

Your cursor's best mate. A free, open-source Windows tray app that manages mouse speed, acceleration, scroll speed, cursor size, and more across switchable profiles. Set up your preferred settings for precision work, everyday use, and gaming — then switch between them instantly.


Features

Core

  • Three mouse profiles — Precision, Everyday, and Gaming, plus unlimited custom profiles
  • Mouse speed control — Hardware-level speed adjustment (1-20)
  • Enhance Pointer Precision — Toggle mouse acceleration on/off per profile
  • Scroll speed — Adjust lines per wheel click
  • Double-click speed — Fine-tune double-click timing
  • Cursor size — Adjust system cursor size (1-15)
  • System tray app — Minimal footprint, always one click away
  • Manual nudges — Quick-adjust speed, scroll, or cursor size from tray submenus

Extras

  • Find My Cursor — Ctrl+Alt+F draws an animated shrinking circle at your cursor position. Like macOS shake-to-find but better.
  • Magnifier — Ctrl+Alt+M shows a magnified view following your cursor. Toggle on/off.
  • Click counter — Tracks left/right/middle clicks per day with visual bar charts
  • Usage stats — Track time spent in each profile
  • Notification toasts — Windows notifications on profile switch
  • Auto-lock — Manual profile selection locks automatically to prevent scheduled overrides
  • Per-profile tray icons — Blue (Precision), Green (Everyday), Red (Gaming)
  • Automatic update checker — Checks GitHub for new releases on startup
  • Auto-start with Windows — Toggle in settings

No Additional Software Required

MousePal is fully self-contained — it controls your mouse directly through Windows APIs. No drivers, no third-party tools, no admin privileges needed.


Installation

No additional software required.

Option A: Windows Installer (recommended)

  1. Download MousePal_Setup.exe from Releases
  2. Run the installer
  3. Launch from Start Menu or desktop shortcut

Windows SmartScreen: You may see a "Windows protected your PC" warning. Click "More info" then "Run anyway". The source code is fully open for inspection.

Option B: Portable (no install needed)

  1. Download the portable zip from Releases
  2. Extract to a folder
  3. Run MousePal.exe

Option C: Run from source

  1. Clone this repository
  2. Install Python 3.10+
  3. Install dependencies: pip install -r requirements.txt
  4. Run: pythonw main.py

Usage

Switching Profiles

Method Action
Tray menu Right-click the tray icon, click a profile
Hotkey Ctrl+Alt+1 (Precision), Ctrl+Alt+2 (Everyday), Ctrl+Alt+3 (Gaming)

Hotkeys

Hotkey Action
Ctrl+Alt+1 Switch to Precision
Ctrl+Alt+2 Switch to Everyday
Ctrl+Alt+3 Switch to Gaming
Ctrl+Alt+F Find My Cursor (animated highlight)
Ctrl+Alt+M Toggle Magnifier
Ctrl+Alt+Shift+Up/Down Nudge mouse speed ±1
Ctrl+Alt+P Panic button (reset to Everyday)
Ctrl+Alt+L Profile Lock toggle

Settings

Right-click the tray icon and click Settings:

  • Profiles tab — Adjust speed, acceleration, scroll, double-click, cursor size, and hotkey per profile. Add/delete custom profiles.
  • Stats tab — Click counts (left/right/middle per day/week) and profile time bar charts.
  • General tab — Auto-start, notifications, language, hotkey reference, current status.
  • About tab — Version, MouseWheel Digital branding, feedback email, Buy Me a Coffee.

Default Profiles

Profile Speed Acceleration Scroll Double-Click Use Case
Precision 5 Off 3 lines 500ms Design work, spreadsheets
Everyday 10 On 3 lines 400ms General use, browsing
Gaming 15 Off 5 lines 300ms Fast reactions, FPS games

All values are fully customisable per profile.


FAQ

Do I need any other software? No. MousePal controls your mouse directly through Windows APIs. No drivers, no third-party tools needed.

Does it work with any mouse? Yes. MousePal controls system-level mouse settings that apply to all connected mice — wired, wireless, Bluetooth, gaming, trackball, anything.

What does the red dot on the tray icon mean? Your profile is locked. This happens automatically when you manually select a profile. Right-click → Unlock Profile or press Ctrl+Alt+L to return to unlocked state.

How does Find My Cursor work? Press Ctrl+Alt+F and a bright animated circle appears at your cursor position, then shrinks and fades away over about 1 second. Useful for finding your cursor on large or multi-monitor setups.

How does the Magnifier work? Press Ctrl+Alt+M to toggle a small magnifying window that follows your cursor, showing a 2x zoomed view of the area around it. Press again to close. Great for detailed work or accessibility.

Does it track my clicks? Yes, locally. Click counts (left/right/middle) are stored in your local config file and shown in Settings > Stats. No data is sent anywhere.

Does the app phone home? No. Everything runs locally. The only network call is the update checker on startup (checks GitHub releases). No telemetry, no analytics.


How It Works

Feature Technology
Mouse speed Win32 SystemParametersInfo (SPI_SETMOUSESPEED)
Acceleration Win32 SystemParametersInfo (SPI_SETMOUSE)
Scroll speed Win32 SystemParametersInfo (SPI_SETWHEELSCROLLLINES)
Double-click Win32 SystemParametersInfo (SPI_SETDOUBLECLICKTIME)
Cursor size Windows Accessibility registry
Click counter Win32 SetWindowsHookEx (WH_MOUSE_LL)
Cursor finder Tkinter overlay with animated canvas
Magnifier PIL ImageGrab + Tkinter overlay
System tray pystray
Settings UI customtkinter
Global hotkeys keyboard

Building from Source

pip install pyinstaller
pyinstaller --noconfirm --windowed --name "MousePal" --icon "assets/icon.ico" --add-data "assets;assets" --add-data "lang;lang" --collect-all customtkinter --hidden-import pystray._win32 main.py

The output will be in dist/MousePal/.

To build the Windows installer, install Inno Setup 6:

"C:\Program Files (x86)\Inno Setup 6\ISCC.exe" installer.iss

Support the Project

MousePal is free and open source. If you find it useful:

Buy Me A Coffee


License

MIT License — see LICENSE for details.


MouseWheel Digital
A MouseWheel Digital product
Digital products. Built with purpose.

Built with the assistance of Claude Code by Anthropic.

About

Your cursor's best mate. Windows tray app for mouse speed, acceleration, scroll, cursor size, and more — across switchable profiles.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors