Generate typical typing errors for any given string
Latest commit 0c74986 Sep 27, 2013 @yetzt added blocking interface
Failed to load latest commit information.
package.json added blocking interface Sep 27, 2013 added blocking interface Sep 27, 2013
test.js test Jun 26, 2013
typo.js added blocking interface Sep 27, 2013


Humans make a lot of typos. This software tries to behave as human as possible in this aspect.

Typo Generators


  • Keyboard Mishit – Typicak keyboard mishits based on QUERTY and QUERTZ keyboard layouts
  • Double Characters – Hittingg a character twice
  • Missing Characters – Nt hitting a character
  • Mixing Characters – Mixign up two neighbouring characters


  • Sausage Fingers - Typicakl second keys accidentially pressed when hitting between keys
  • Character Shift - Hittgin a character two positions too soon or too late
  • Character Flip - Mixgni two characters by two positions


npm install typojs


var typo = require("typojs");

typo(string, extended, callback(typos))

  • string is a String you want to get typos for
  • extended generates more, less common typos (optional)
  • callback is a callback method with all generated typos as first argument (optional)

If no callback method is specified, the generated typos will be returned instead.


var typo = require("typojs");

/* with callback */
typo("Whatever", true, function(typos){

/* without callback */
console.log(typo("Whatever", true));


This software is dedicated to my dear friend, the Imperator of Cucumbers, who makes a lot of typos.


TypoJS is Unlicensed Public Domain.


Flattr this git repo