typosquotter
A NodeJS tool for generating typosquotted domains
Checkout the web demo with a working example.
Installation
As a node module
You can use it in your scripts as a node module:
$ npm install --save typosquotter
For the browser
If you want to use it in your websites or web application:
<script src="https://unpkg.com/typosquotter/dist/main.js"></script>
As a command line tool
If you want to use typosquotter from your command line, you have to install the global module than you can use it from the command line everywhere:
$ npm install -g typosquotter-cli
$ typosquotter --help
Or if you want to try it out or quick use it without having to installing it:
$ npx typosquotter-cli --help
Usage
The simplest usage it to call it with a hostname and it will return all the possible typosquotted domains using various techniques.
const typosquotter = require('typosquotter');
const options = {}
console.log(
typosquotter('youtube.com', options)
);
// repetition: [
// 'yyoutube.com',
// 'yooutube.com',
// 'youutube.com',
// 'youttube.com',
// 'youtuube.com',
// 'youtubbe.com',
// 'youtubee.com'
// ],
// subdomain: [
// 'y.outube.com',
// 'yo.utube.com',
// 'you.tube.com',
// 'yout.ube.com',
// 'youtu.be.com',
// 'youtub.e.com'
// ],
// switching: [
// 'oyutube.com',
// 'yuotube.com',
// 'yotuube.com',
// 'youutbe.com',
// 'youtbue.com',
// 'youtueb.com'
// ],
// tld: [
// 'youtube.ac',
// 'youtube.ad',
// 'youtube.ae',
// ...
Examples
Create typosquotted domain using all techniques:
typosquotter('youtube.com')
Create a flatten array of typosquotted domain using all techniques:
typosquotter('youtube.com', { flat: true })
Create typosquotted domain using a specific technique:
typosquotter('youtube.com', {
only: ['repetition']
})
Create typosquotted domain using all techniques but not the excluded:
typosquotter('youtube.com', {
exclude: ['tld', 'vowelswap']
})
Contributing
- Create an issue and describe your idea
- Fork the project (https://github.com/b4dnewz/node-typosquotting/fork)
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Publish the branch (
git push origin my-new-feature
) - Create a new Pull Request