Skip to content

gc/confusables

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 

npm MIT gzip size

Confusables

This library allows you to replace confusables in a string with their lookalike English character.

Try it out: https://confusables.netlify.com/

Purpose

When you need to filter/check English text and want any characters that look very similar to English characters, to be converted into those English characters. It does not support other languages - it's not possible to support other languages whilst remaining very practical/effective at normalizing for English.

The main purpose is for filtering profanity: users can easily bypass most filters by changing "fuck" to "fück", this stops that.

Installation

yarn add confusables

npm install confusables

Usage

Removing confusables

import remove from 'confusables'; 

remove('Ἢἕļľᦞ ш٥ṟlᑰ! Hello World!'); // => Hello World! Hello World!
remove('Iлtèrnåtïonɑlíƶatïǫԉ'); // => Internationalization

Injecting random confusables

import { obfuscate } from 'confusables'; // with ES modules

obfuscate('Hello World!'); // => Ḣé𝑙ŀ𝟶 Ꮤᴑ𝖗łᏧ
obfuscate('Internationalization'); // => ᶦṅᵗᧉ𝘳𝓃ȧťί𝙾ቢค𝞲ἱƶ𝜶ナἰøʼn

About

A nodejs library for removing confusable unicode characters from strings.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •