100% Free Β· Open Source Β· No Ads

Watch YouTube on a head-mouse,
without accidental pauses.

David Mouse is a small Windows tool made for people who control their cursor with head movement (head-mouse / eye-gaze). It solves the most common frustration: tiny head jitter triggering accidental auto-clicks β€” your music keeps pausing, your videos keep stopping. Hit one big button to pause auto-click, and resume it when you need to interact again.

Download

Pick whichever fits. If you're not a developer, pick the standalone executable β€” download, unzip, run. If the person you support uses ChatGPT voice dictation, pick the ChatGPT dictation edition instead.

Standalone .exe (no Python needed)

Just download the zip, unzip, and double-click. No Python or dependencies required. Best for regular users.

v1.3.6: one-shot swipe (β—€ β–Ά) for menus that only respond to press and drag, such as pop-up web games; fixed autostart taking minutes to appear; added an autostart diagnosis tool. See README.txt inside the zip.

Download for Windows (.zip)

⚠️ On first launch Windows may show a SmartScreen warning (we're a solo dev without a paid code-signing cert).
Click "More info" β†’ "Run anyway".

ChatGPT dictation edition

Adds a "Dictation" button. Dwelling on it sends Ctrl+/ to trigger ChatGPT desktop's voice dictation shortcut. (Since v1.2.0 both editions have the same features; this link is kept for people already on this edition.)

v1.3.6: one-shot swipe (β—€ β–Ά) for menus that only respond to press and drag, such as pop-up web games; fixed autostart taking minutes to appear; added an autostart diagnosis tool.

Download ChatGPT dictation edition (.zip)

First set ChatGPT desktop's dictation shortcut to Ctrl+/ in its settings β€” both sides need to match. Works like the Left/Right buttons: dwell the button, move the cursor to the ChatGPT input box during the countdown, and it clicks there before sending the shortcut.

Source code (for developers)

Want to modify, study, or customize? Clone the repo and build it yourself. MIT-licensed.

View source on GitHub (opens in a new window)

Requires Python 3.10+.
See "For developers: run from source" below.

Why this exists β€” David's Story

"If even the most basic pleasures are taken away, where does the weight of life rest?"

This software was built because of David

In my career as an assistive technology evaluator, David Chang's story β€” a person with cervical spinal cord injury (SCI C-level) β€” is one that has left the deepest impression on me.

When I first met David, he was in bad shape. The spinal cord injury from a car accident had stripped him of control over his body, leaving him entirely dependent on his wife around the clock. In that small room, what was trapped wasn't only David's immobilized body β€” it was also the unbearable pressure on his wife. As an occupational therapist, I knew my job wasn't just to help him "maintain vital signs," but to help him reclaim the feeling of having a life.

To help him reconnect with the world, we tried to secure a head-mouse for him through charitable funding. But we ran into a wall. We sensed that wheelchairs and electric beds β€” "traditional" assistive devices β€” were gladly supported. The moment we mentioned a "mouse," though, the room cooled: that was entertainment, not a basic necessity.

That gap in social perception struck me deeply. Many people think a person with a severe disability just needs to survive and be able to move β€” in those early days, David could barely move his neck at all. They overlook the fact that enjoyment and autonomy are often what keep a person going. For David, browsing the web, watching videos, and chatting with the outside world by typing β€” these weren't luxuries. They were the only tiny window through which he could reclaim any sense of control over his own life.

Fortunately, we didn't give up. We eventually found other resources and managed to get David his head-mouse hardware.

But once the hardware was in place, the real challenge emerged on the software side.

We started with point-n-click software. To be fair, it's powerful and full-featured β€” but for a non-technical family caregiver, the advanced settings were simply too complex. David's wife was already exhausted from daily caregiving; she couldn't reasonably be expected to fine-tune layer upon layer of configuration.

What made it even more disheartening was that we went through round after round of testing and adjustment with David. Even after painstakingly getting everything configured, the software still produced uncontrolled auto-clicks. Imagine the scene: David finally gets a video to start playing, full of expectation β€” and the screen keeps cycling through play, pause, play, pause (play/pause/play/pause) in an endless loop.

Watching the hope in his eyes turn to helpless frustration…

"Why don't we just build our own?" The thought surfaced.

We decided to build a tool centered on subtraction design and named it "david-mouse" after him. We put all the focus on UI/UX β€” keeping only the most essential, most-used features. The goal was clear: the user and their family should be able to set it up intuitively, without always waiting for a professional to come help. We even added multilingual support, because our quiet hope was that not just David, but other SCI patients anywhere in the world could download it for free and reclaim their digital autonomy.

After "david-mouse" was finished, David's life genuinely changed.

He can now navigate the web and find entertainment on his own, using just subtle head movements. Not only did this give his wife room to breathe β€” more importantly, the light in David's eyes came back. The irritable, depressed David slowly faded, because that small mouse had given him back the feeling of being in control. He found the motivation to try more: he pushed himself to speak louder and more clearly; he started wanting to sing; he wanted to control more things through his own effort.

This vitality pushed us forward too. Riding that wave of motivation, we later helped modify his electric wheelchair's controller. Today, David can confidently take himself out in his wheelchair on his own.

From a tiny cursor on a screen to a wheelchair moving freely in the real world. "david-mouse" may be just a simple piece of software, but for David, it was the key to restarting his life β€” and the gift we want to give to people with spinal cord injuries everywhere.

Core Features

Everything is designed around one principle: a head-mouse user should be able to operate it without strain. All buttons are large, high-contrast, and trigger via dwell (cursor stays still).

Main UI with auto-click running
Main view β€” green means auto-click is running
Auto-click paused
Paused β€” the red button explicitly says "Dwell here to resume"
Voice dictation countdown
New: Dictation button countdown β€” gives you time to move the cursor to ChatGPT's input box

Three view modes for different moments

No need to keep the full interface open all the time. Once you're set up, switch to a smaller mode for everyday use.

Full mode
Full mode β€” use this for first-time setup, or to change language / dwell time
Compact mode
Compact mode β€” just Pause/Resume, Dictation, Scroll, Swipe, and the corner arrows. Smaller footprint for everyday use
Watch mode
Watch mode β€” shrinks to a 90Γ—90 widget (actual size), completely out of the way while watching YouTube

One-click pause

A huge PAUSE button. Dwell once to pause before YouTube, dwell again on the same button to resume. The whole flow works without ever needing a physical mouse.

▢️

Watch Mode (zero accidental clicks)

About to sing along to YouTube? Hit "Watch Mode" β€” the window automatically [pauses auto-click + shrinks to a 90Γ—90 corner widget] so head jitter can't trigger anything and the video isn't blocked. Dwell the widget when you're done to restore everything.

Compact Mode (smaller footprint)

Hit "πŸ—— Compact" in the top-left and the window shrinks to just Pause/Resume, Dictation, Scroll, Swipe, and the corner arrows. Once everything's configured, keep it compact for everyday use β€” hit "Expand" to get the full controls back.

Adjustable dwell time

Slide between 0.5 and 3 seconds. Everyone's head stability is different β€” find what works for you.

Four action shortcuts

Left click, right click, double click, pause/resume β€” each with a 2.5-second countdown so you have time to move the cursor to the target.

One-shot scroll (4 directions)

No more hunting for the scrollbar on long pages. Dwell on one of the four Scroll arrows, move the cursor to the area you want scrolled during the countdown, and it scrolls once (three wheel notches) right there, same flow as Dictation. Afterwards auto-click stays off for 1 second and until the cursor leaves the scroll spot, so it never clicks where you parked the mouse.

One-shot swipe (left / right)

Web game menus and phone-style carousels often only move when you press and drag, and the scroll wheel does nothing. Dwell on β—€ or β–Ά in the Swipe row, move the cursor onto the carousel during the countdown, and it presses the left button there, drags 300 pixels, and lets go, just like a finger swipe. β–Ά shows what is on the right, β—€ what is on the left. Afterwards auto-click stays off for 1 second and until the cursor leaves that spot.

β†– β†—
↙ β†˜

Snap to any corner

The arrows in the window corners jump the app to the top-left, top-right, bottom-left, or bottom-right of your screen β€” out of the way of whatever you're doing.

Four-language UI

Switch between 繁體中文 / English / ζ—₯本θͺž / ν•œκ΅­μ–΄ right inside the app. Works for users and family members across languages.

Start with Windows

Tick the box once and it launches automatically every time you boot. No more manual startup.

Since v1.2.0, the first launch asks once whether to allow changes; click "Yes" and you're done. Every logon after that starts David Mouse as Administrator with no further prompts, and even a manual double-click switches itself into Administrator mode. Some games and windows only accept clicks that way.

How to use it

Four steps. To watch YouTube or sing along to karaoke, just hit "β–Ά Watch Mode" β€” it's the killer feature in this build.

1

Set your dwell time

Use the slider to choose how long the cursor must stay still before triggering a click. Try 1.0s to start. If your head is very stable, go shorter (0.5s). If less stable, go longer (2s+).

2

Watching YouTube / singing along? Hit "β–Ά Watch Mode"

This is the flagship feature for video watching. Dwell on the blue "β–Ά Watch Mode" button for ~1 second β€” the window automatically [pauses auto-click + shrinks to a 90Γ—90 corner widget + drops the Windows title bar]. The video isn't blocked, and head jitter can't trigger any clicks.

To restore: dwell on the small blue widget in the corner for ~1 second. The window expands back to full and auto-click resumes.

3

Just want to pause, not shrink? Use PAUSE

Move your cursor onto the green "● AUTO-CLICK ON" button and let it dwell ~1 second β€” the button turns red "⏸ PAUSED". The window stays its normal size but auto-click is off. Dwell the red button again to resume.

4

Need to click something? Use an action button

Dwell on Left / Right / Double for ~1 second β†’ button turns yellow with a countdown β†’ during the 2.5 seconds, move your cursor to wherever you want the click to land β†’ it fires automatically at the end.

5

All set up? Hit "πŸ—— Compact" for everyday use

The "πŸ—— Compact" button in the top-left shrinks the window down to just Pause/Resume, Dictation, Scroll, Swipe, and the corner arrows β€” a good fit for a corner of the screen once you're done configuring. Hit "Expand" any time you need to change the language or dwell time again.

For developers: run from source

Want to build or modify the source yourself? Full commands below. Regular users should go back up to the Download section and grab the single-file .exe instead β€” you don't need any of this.

Quick start (recommended)

No need to pre-install Python β€” install.bat will auto-install it for you (per-user, no admin needed) if it isn't already there:

# 1. Get the source
git clone https://github.com/renstudiodev-TW/david-mouse
cd david-mouse

# 2. One-click install (handles Python + deps)
install.bat

# 3. Run it
run.bat

Build a standalone .exe

If you want a single .exe that doesn't need Python installed:

# 1. Install PyInstaller
pip install pyinstaller

# 2. Build
build.bat

# 3. Find the exe in
dist\david-mouse.exe

Free forever

No paid tiers, no forced updates, no ads. Ever.

Open source

All code is public. Read it, modify it, fork it. MIT License.

Sends no data

Doesn't connect to the internet, collect personal info, or track behavior. Settings live on your own machine.