JensHeinrich / cuss

🤬 Map of profane words to a rating of sureness

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

cuss

Build Coverage Downloads Size

Map of profanities, slurs, and obscenities to a sureness rating. This rating does not represent how vulgar a term is, instead, how likely it is to be used as either profanity or clean text.

Install

This package is ESM only: Node 12+ is needed to use it and it must be imported instead of required.

npm:

npm install cuss

Use

import {cuss} from 'cuss'

console.log(Object.keys(cuss).length) // 1776

console.log(cuss.beaver) // 0
console.log(cuss.asshat) // 2

Usage of locale versions

To use Portuguese do:

import {cuss} from 'cuss/pt'

console.log(Object.keys(cuss).length) // 173

console.log(cuss.burro) // 1
console.log(cuss.bixa) // 2

API

cuss has the following entries in its export map: cuss (English), cuss/ar-latn (Arabic (Latin script)), cuss/es (Spanish), cuss/fr (French), cuss/it (Italian), cuss/pt (Portuguese), cuss/pt-pt (Portuguese (Portugal)).

Each entry exports the identifier cuss. There are no default exports.

cuss

Each cuss is a dictionary of phrases to ratings (Record<string, number>), where each key can be considered offensive, and each rating is a number between 0 and 2 (both including), representing the certainty the key is used as a profanity depending on context.

Rating Use as a profanity Use in clean text Example
2 likely unlikely asshat
1 maybe maybe addict
0 unlikely likely beaver

Support

Related

  • buzzwords — List of buzzwords
  • dale-chall — List of familiar American-English words (1995)
  • fillers — List of filler words
  • hedges — List of hedge words
  • profanities — List of the same profane words, but without the sureness
  • spache — List of simple American-English words (1974)
  • weasels — List of weasel words

Contributing

Thanks, contributions are greatly appreciated! :+1:

New terms can be added to the corresponding files as listed in the support section.

To add a new language, create a new JS file with a BCP 47 language tag as its name (lower case, dashes, and preferred and normalized).

After adding a word, run npm install to install all required dependencies, then npm test to update: the project includes some scripts to make sure everything is in order. Finally, open a pull request.

License

MIT © Titus Wormer

About

🤬 Map of profane words to a rating of sureness

License:MIT License


Languages

Language:JavaScript 100.0%