A javascript virtual keyboard derived from http://www.greywyvern.com/code/javascript/keyboard, with a number of additions: keyboard support, many phonetic layouts, tooltips/hints for keys in all Indian languages, audio hints for devanagari phonetic layouts. Using phonetic layouts, you can easily type in any language on standard english keyboards. Coupled with tooltips, you can even type in languages you don't even know. A live demo can be seen on https://apps.facebook.com/mothertounge/