Project · Wed, 26 Aug, 2026 · 11:23 am UTC

Virtual Mouse Tracker Application

  • Hardik Srivastava

Uses Virtual Mouse to navigate on laptop and perform different tasks on laptop without the need of external mouse.

How to use

One can simply run the app, His right hand is the pointer, and thumbs up at same time on left hand means a click. Now he can navigate on laptop and when he wants to click, then simply show thumbs up on left hand.

Notes & next steps

Gestures needs to be decided more for performing more detailed navigation, and operations. Also planning of improving user experience more.

Virtual-Mouse-Tracker-Application

Starts in mouse mode.

Right hand

GestureAction
Index fingertipMove cursor / pointer

Left hand

GestureAction
Thumbs-up (fist + thumb up; index curled)Click
Index + middle (two fingers), drag up/downScroll
Thumb + index openDouble-click

Keys

KeyAction
mMouse mode
kKeyboard mode (UI hidden for now)
q / EscQuit

Hand tracking uses OpenCV 5 DNN.

Browser demo (Vercel)

Gesture demo that runs in the browser (on-page pointer only — not the OS mouse):

See web-demo/ and its README for local preview and Vercel deploy steps.

Setup

cd ~/Public/Projects/palm-keyboard
python3.12 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python app.py

Companion apps (separate terminals)

Virtual keyboard (no camera)

Large on-screen keys + text field (OpenCV window — no Tk). Use with the air mouse (app.py) to click the field and keys.

source .venv/bin/activate
python virtual_keyboard.py

Air paint (uses camera)

Right index = brush. Left thumbs-up = space (lift brush). Otherwise paints while moving.

source .venv/bin/activate
python paint_app.py

Keys: [ ] brush size · 1–5 colors · c clear · q quit.

Hackers

Builders behind this 503 Day project.

Hardik Srivastava
Hardik Srivastava

Solution Engineer

Passionate about books, tech innovations, and uncovering history's hidden stories.