It already existed, you can see when we started shipping the integrated terminal pretty clearly from the contribution graph :) https://github.com/sourcelair/xterm.js/graphs/contributors
The project itself is a fork of the popular term.js which is now unmaintained, we've taken it quite far since then. Hyper are probably going to be making a switch once a few more kinks are worked out too https://github.com/zeit/hyper/issues/1275
I also liked the name of the project, xterm.js. :)