All Projects → gc → confusables

gc / confusables

Licence: MIT license
A nodejs library for removing confusable unicode characters from strings.

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to confusables

Contour
Modern C++ Terminal Emulator
Stars: ✭ 191 (+282%)
Mutual labels:  unicode
lua-wcwidth
Pure Lua implementation of the wcwidth() function
Stars: ✭ 14 (-72%)
Mutual labels:  unicode
elokab-terminal
Lightweight terminal emulator program that supports the Arabic language
Stars: ✭ 16 (-68%)
Mutual labels:  unicode
Stringi
THE String Processing Package for R (with ICU)
Stars: ✭ 204 (+308%)
Mutual labels:  unicode
Text
An efficient packed, immutable Unicode text type for Haskell, with a powerful loop fusion optimization framework.
Stars: ✭ 248 (+396%)
Mutual labels:  unicode
jurl
Fast and simple URL parsing for Java, with UTF-8 and path resolving support
Stars: ✭ 84 (+68%)
Mutual labels:  unicode
Diagon
Interactive ASCII art diagram generators. 🌟
Stars: ✭ 189 (+278%)
Mutual labels:  unicode
unicode-9.0.0
JavaScript-compatible Unicode data. Arrays of code points, arrays of symbols, and regular expressions for Unicode v9.0.0’s categories, scripts, blocks, bidi, and other properties.
Stars: ✭ 16 (-68%)
Mutual labels:  unicode
greeb
Greeb is a simple Unicode-aware regexp-based tokenizer.
Stars: ✭ 16 (-68%)
Mutual labels:  unicode
unicode-blocks
Unicode Blocks of a Ruby String
Stars: ✭ 18 (-64%)
Mutual labels:  unicode
Cowsay Files
A collection of additional/alternative cowsay files.
Stars: ✭ 216 (+332%)
Mutual labels:  unicode
V Emoji Picker
🌟 A Lightweight and customizable package of Emoji Picker in Vue using emojis natives (unicode).
Stars: ✭ 231 (+362%)
Mutual labels:  unicode
Tehreer-Android
Standalone text engine for Android aimed to be free from platform limitations
Stars: ✭ 61 (+22%)
Mutual labels:  unicode
Regexpu
A source code transpiler that enables the use of ES2015 Unicode regular expressions in ES5.
Stars: ✭ 201 (+302%)
Mutual labels:  unicode
Words-away
防止文本的敏感词检测 - Prevent sensitive words detection of text.
Stars: ✭ 224 (+348%)
Mutual labels:  unicode
Encoding rs
A Gecko-oriented implementation of the Encoding Standard in Rust
Stars: ✭ 196 (+292%)
Mutual labels:  unicode
unicode.net
A Unicode library for .NET, supporting UTF8, UTF16, and UTF32. With an extra helping of emoji for good measure 🔥🌶️😁
Stars: ✭ 81 (+62%)
Mutual labels:  unicode
ocreval
Update of the ISRI Analytic Tools for OCR Evaluation with UTF-8 support
Stars: ✭ 48 (-4%)
Mutual labels:  unicode
arrow-finder
These docs help you to find and use arrows you need more quickly
Stars: ✭ 24 (-52%)
Mutual labels:  unicode
cs string
Header-only library providing unicode aware string support for C++
Stars: ✭ 91 (+82%)
Mutual labels:  unicode

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
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].