Skip to content
A touchscreen numeric keypad for touchscreen devices. Run the server on your computer, and browse to the server on your touchscreen device's browser. Button presses are relayed to the active window via X11 events
Ruby JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Mobile Numeric Keypad

I needed a numeric keypad for some software, so I made a touchscreen remote control numeric keypad for my iPhone.

There's software that already does this (NumberKey) but this doesn't have a client software for *nix.

This runs on ruby/sinatra, serving up some HTML showing a numeric keypad for the iPhone.


  • sinatra gem install sinatra
  • haml gem install haml
  • xdotool sudo apt-get install xdotool (sudo port install xdotool if on Mac. Requires MacPorts)

When you tap buttons, HTTP requests are made back to sinatra, which invokes xdotool to send the corresponding X event to the active window.


Run the server: ruby numkeys Browse to the server from your iphone: http://your.computers.ip.address:4567/ Tap the numeric keypad buttons on the phone screen


  • There's no authentication (anyone could send keyboard events to your computer)
  • It'll only work with X11 (no windows)
  • Pressing and holding keys only sends one keypress event at the moment


  • Mark Hansen - Programming
  • Ryan Delaney - Graphic Design
You can’t perform that action at this time.