This project uses MediaPipe hand tracking to map left-hand mode selection and right-hand gestures into OS actions (mouse, scrolling, media controls, and system shortcuts).
- Webcam hand tracking with
mediapipe+opencv-python - Gesture-based mouse movement, click, double-click, drag, and right-click
- Scroll mode with vertical and horizontal scrolling
- Media mode for volume, mute, play/pause, next/previous track
- System mode for Alt+Tab, task view, show desktop, screenshot, and close window
- Runtime settings UI (
skey) with persistence inhands/settings.json
From the project root, in powershell:
.\setup.bat
Install the requirements below before this. From the project root:
.\venv\Scripts\activate
python -m hands.main- Windows 10/11
- Python 3.10+ (3.11 recommended)
- A working webcam
From the project root:
python -m venv venv
.\venv\Scripts\activate
pip install -r requirements.txtNote: use .\venv\Scripts\activate.ps1 for Windows
- Open palm (or no left hand): Cursor mode
- Fist: Scroll mode
- Pointing: Media mode
- L-shape: System mode
- Move index fingertip to move cursor
- Pinch = click
- Quick repeated pinch = double click
- Hold pinch = drag
- Three-finger pinch = right click
- Index only = scroll up
- Index + middle = scroll down
- Thumb only = horizontal scroll right
- Pinky only = horizontal scroll left
- Thumb only = volume up
- Pinky only = volume down
- V-shape = mute toggle
- Open palm = play/pause
- Three middle fingers - next track
- thumb and pinky - previous track
- L-shape + horizontal movement = Alt+Tab navigation
- Four fingers = task view
- Fist = show desktop
- Pinky hold = screenshot
- V-shape hold = close active window
q- Quits- Open settings window
- Runtime-tunable values are loaded from
hands/settings.json. - Default constants live in
hands/config.py. - Press
sduring runtime to open the settings window and save changes.
- If camera does not open, check
WEBCAM_INDEXinhands/config.py. - If gestures feel too fast/slow, tune
SENSITIVITY,EASING, andFRAME_MARGINfrom settings. - If media/system keys do not work in some apps, run the terminal as Administrator.
- If dependencies fail to install, upgrade pip first:
python -m pip install --upgrade pip.
This Canva theme for those images shared above
Made with ❤️ by Afaq, Munhim, Zamin








