https://github.com/codergautam/purgomalum-swear-filter
The easiest way to block swearing on your project!
https://github.com/codergautam/purgomalum-swear-filter
Last synced: about 1 year ago
JSON representation
The easiest way to block swearing on your project!
- Host: GitHub
- URL: https://github.com/codergautam/purgomalum-swear-filter
- Owner: codergautam
- Created: 2021-11-10T14:22:34.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2021-12-09T14:59:38.000Z (over 4 years ago)
- Last Synced: 2024-04-25T07:22:23.703Z (about 2 years ago)
- Language: JavaScript
- Size: 6.84 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
purgomalum-swear-filter


> ### The easiest way to block swearing on your project!
## Install
```sh
npm i purgomalum-swear-filter
```
## Usage
Here is a basic example of how `purgomalum-swear-filter` works:
```js
const Filter = require("purgomalum-swear-filter")
var filter = new Filter()
filter.clean("Hello a$$")
.then((cleanedText) => {
console.log(cleanedText) //Hello ***
})
```
You can also use `filter.containsProfanity()`, to check if text contains profanity. It returns a boolean.
```js
filter.containsProfanity("Hello")
.then((isBad) => {
console.log(isBad) //false
})
```
If you don't like promises, you can always use `await` in an `async` function:
```js
async function() {
var cleaned = await filter.clean("hello")
console.log(cleaned) //hello
}
```
One of the coolest things about this filter, is that it doesn't always filter out substrings. For example:
```js
await filter.containsProfanity("cock") // true
await filter.containsProfanity("cockpit") // false
```
#### Filter Config
You can use a filter config to change functionality of the Purgomalum Filter. Here is a filter object:
```json
{
fill_text: "[CENSORED]",
fill_char: "~",
add: ["badword", "profanityword"]
}
```
Here is a short explanation about each of them (from the official Purgomalum Website)
| Name | Type| Description|
|--|--|--|
| fill_text | string | Text used to replace any words matching the profanity list. Accepts letters, numbers, underscores (_) tildes (~), exclamation points (!), dashes/hyphens (-), equal signs (=), pipes (\|), single quotes ('), double quotes ("), asterisks (*), open and closed curly brackets ({ }), square brackets ([ ]) and parentheses (). Maximum length of 20 characters. When not used, the default is an asterisk (\*) fill. |
|fill_char|string|Single character used to replace any words matching the profanity list. Fills designated character to length of word replaced. Accepts underscore (_) tilde (~), dash/hyphen (-), equal sign (=), pipe (\|) and asterisk (\*). When not used, the default is an asterisk (\*) fill.|
| add | array | An array of additional words to be added to the profanity list. Accepts letters, numbers, underscores (_) and commas (,). Accepts up to 10 words (or 200 maximum characters in length). The filter is case-insensitive, so the case of your entry is not important. |
> **Note**: You can only have either `fill_char` or `fill_text`. You cannot have both.
You can use the config object to create a new `Filter`, like this:
```
var config = {
fill_char: "*",
add: []
}
var filter = new Filter(config)
```
## Author
👤 **CoderGautamYT**
* YouTube: https://youtube.com/codergautam
* Github: [@codergautam](https://github.com/codergautam)
## 🤝 Conclusion
Contributions, issues and feature requests are welcome!
Find any issues? Please report them on the [issues page](https://github.com/codergautam/purgomalum-swear-filter/issues).
Give a ⭐️ if this project helped you!
### 🏠 [Github](https://github.com/codergautam/purgomalum-swear-filter)