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.
README
View on GitHubVirtual-Mouse-Tracker-Application
Starts in mouse mode.
Right hand
| Gesture | Action |
|---|---|
| Index fingertip | Move cursor / pointer |
Left hand
| Gesture | Action |
|---|---|
| Thumbs-up (fist + thumb up; index curled) | Click |
| Index + middle (two fingers), drag up/down | Scroll |
| Thumb + index open | Double-click |
Keys
| Key | Action |
|---|---|
m | Mouse mode |
k | Keyboard mode (UI hidden for now) |
q / Esc | Quit |
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.

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