Air Mouse and touchpad with full web technology.
Unzip downloaded zip, tap to open it. Then you have a desktop with mouse server enabled.
Open your mobile browser by scanning the QRCode or enter the URL, then you are able to control your desktop via browser.
- Use
Single finger touch
will let you move the mouse. - Use
Double finger touch
will let you scroll the content. - Use
Single finger tap
will let you simulate left click. - Use
Double finger tap
will let you simulate right click.
Tap menu then choose Motion Control
, then you can wave your mobile device to control the mouse.
Tap menu then choose Presentation Control
, then you can control the presentation by:
- Use
Single finger tap
will let you simulate right arrow. - Use
Double finger tap
will let you simulate left arrow.
On desktop and on client side browser, tap menu then choose Passcode
to enter same string on prompt, then you can make sure the mouse is only accessible by you. (The passcode is not remembered and should re-entered when you restart the desktop next time)
Patch is welcome. If you feel Webby Mouse is useful, please spread the word on social media!
- Server
- Desktop
- Application packager: NW.js (Node Webkit)
- Mouse action: RobotJS
- QRCode: jquery qrcode
- Client
- Touch detection: HammerJs
- Mobile accelerator: DeviceOrientation
- Shared
- App Template: Webapplate
- UI: Bootstrap CSS framework
- Web socket: socket.io Real time communication
Get required packages
$ npm install
Which will also run bower install
to install related client side libraries into public/vendor
folder.
Then run
$ node server.js
To host the mouse server on desktop.
The server side server.js
manage the mouse position change, the client side send position offset to server.
The desktop side desktop.html
includes server.js
and provide the connection instruction and system tray.
In client side index.html
, just call emitMouse to update the mouse position.
You need install node-webkit-builder first
$ npm install nw-builder -g
You have to check nw.js website and use same io.js version as nw.js did.
$ nvm install iojs-1.2.0
$ nvm use iojs
To build a smaller package, we only need install essential libraries for production. Clone a new repository and run following commands:
$ npm install --production
$ nwbuild -p osx64 webbymouse -v 0.12.3
Due to underlying robotjs mouse library, currently MacOS is the only support platform.