bekindprofanityfilter 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # BeKind Profanity Filter
2
2
 
3
- > Forked from [AllProfanity](https://github.com/ayush-jadaun/allprofanity) by Ayush Jadaun. Extended with **romanization profanity detection** (catches Hinglish, transliterated text), **language-aware innocence scoring** (ELD + trie-based detection prevents false positives for cross-language collisions like "slut" in Swedish), and additional language dictionaries. Licensed under MIT.
3
+ > Forked from [AllProfanity](https://github.com/ayush-jadaun/allprofanity) by Ayush Jadaun. Extended with **romanization profanity detection** (catches Hinglish, transliterated text), **language-aware innocence scoring** (ELD + trie-based detection prevents false positives for cross-language collisions like "got" in Turkish), and additional language dictionaries. Licensed under MIT.
4
4
 
5
5
  > ⚠️ **Early-stage package in progress.** Features available in the original AllProfanity are being actively deprecated, adjusted, or replaced. API surface may change without notice. Contributions and suggestions greatly appreciated.
6
6
 
@@ -19,7 +19,7 @@ A multi-language profanity filter with romanization detection, language-aware in
19
19
 
20
20
  - **Multi-Language Profanity Detection:** 34K+ word dictionary across 16 languages with 18-language detection trie
21
21
  - **Romanization Detection:** Catches Hinglish, transliterated Bengali, Tamil, Telugu, and Japanese
22
- - **Cross-Language Innocence Scoring:** Handles words like "slut" (Swedish: "end") and "fart" (Norwegian: "speed")
22
+ - **Cross-Language Innocence Scoring:** Handles words like "got" (Turkish: "buttocks") and "fart" (Norwegian: "speed")
23
23
  - **Context-Aware Analysis:** Booster/reducer patterns detect sexual context, negation, medical usage, and quoted speech
24
24
  - **Leet-Speak Detection:** Catches obfuscated profanity (`f#ck`, `a55hole`, `sh1t`)
25
25
  - **Word Boundary Detection:** Smart whole-word matching prevents flagging "assassin" or "assistance"
@@ -63,7 +63,7 @@ A multi-language profanity filter with romanization detection, language-aware in
63
63
 
64
64
  ---
65
65
 
66
- > **Forked from [BeKind](https://github.com/ayush-jadaun/allprofanity)** by Ayush Jadaun. Extended with **romanization profanity detection** (catches Hinglish, transliterated text), **language-aware innocence scoring** (ELD + trie-based detection prevents false positives for cross-language collisions like "slut" in Swedish), and additional language dictionaries. Licensed under MIT.
66
+ > **Forked from [AllProfanity](https://github.com/ayush-jadaun/allprofanity)** by Ayush Jadaun. Extended with **romanization profanity detection** (catches Hinglish, transliterated text), **language-aware innocence scoring** (ELD + trie-based detection prevents false positives for cross-language collisions like "got" in Turkish), and additional language dictionaries. Licensed under MIT.
67
67
 
68
68
  ## Installation
69
69
 
@@ -197,7 +197,7 @@ const filter = new BeKind({
197
197
 
198
198
  Benchmarked on a single CPU core (pinned via `taskset -c 0`). All numbers are **ops/second — higher is better**.
199
199
 
200
- > **Honest context:** be-kind loads a ~34K-word dictionary across 18 languages by default. `leo + dict` injects be-kind's full 34K dictionary into [leo-profanity](https://github.com/jojoee/leo-profanity) (which ships with ~400 English words only) to test the matching engine with equivalent vocabulary. glin-profanity is benchmarked with all 24 supported languages loaded. `glin + dict` injects be-kind's full 34K dictionary into glin for the same reason.
200
+ > **Honest context:** be-kind loads a ~34K-word dictionary across 18 languages by default. `leo + dict` injects be-kind's full 34K dictionary into [leo-profanity](https://github.com/jojoee/leo-profanity) (which ships with ~400 English words only) to test the matching engine with equivalent vocabulary. `bad-words + dict` injects the same 34K dictionary into [bad-words](https://github.com/web-mech/badwords) (which ships with ~400 English words). glin-profanity is benchmarked with all 24 supported languages loaded. `glin + dict` injects be-kind's full 34K dictionary into glin for the same reason.
201
201
 
202
202
  | Library | Languages (out-of-the-box) | Leet-speak | Repeat compression | Context-aware |
203
203
  |---------|--------------------------|-----------|-------------------|--------------|
@@ -205,29 +205,31 @@ Benchmarked on a single CPU core (pinned via `taskset -c 0`). All numbers are **
205
205
  | **be-kind (ctx)** | same as be-kind | ✅ | 🚧 planned | ✅ (boosters + reducers) |
206
206
  | [leo-profanity](https://github.com/jojoee/leo-profanity) + dict | 16 (via be-kind dict injection) | ❌ | ❌ | ❌ |
207
207
  | [bad-words](https://github.com/web-mech/badwords) | 1 (English) | ❌ | ❌ | ❌ |
208
+ | [bad-words](https://github.com/web-mech/badwords) + dict | 16 (via be-kind dict injection) | ❌ | ❌ | ❌ |
208
209
  | [glin-profanity](https://www.glincker.com/tools/glin-profanity) | 24 | ✅ (3 levels) | ✅ | ✅ (heuristic) |
209
210
 
210
211
  **Speed benchmark** — ops/second on a single CPU core (`taskset -c 0`), higher is better:
211
212
 
212
- | Test | be-kind | be-kind (ctx) | leo | bad-words | glin (basic) | glin (enhanced) | glin + dict |
213
- |------|--------:|--------------:|----:|----------:|-------------:|----------------:|------------:|
214
- | check — clean (short) | 2,654 | 2,903 | 879,009 | 2,932 | 816 | 751 | 68 |
215
- | check — profane (short) | 2,366 | 2,031 | 1,496,281 | 3,025 | 3,128 | 3,304 | 3,350 |
216
- | check — leet-speak | 1,243 | 1,198 | 1,100,028 | 3,148 | 2,760 | 4,078 | 4,499 |
217
- | clean — profane (short) | 2,398 | 2,011 | 298,713 | 243 | N/A | N/A | N/A |
218
- | check — 500-char clean | 411 | 397 | 100,898 | 2,157 | 253 | 247 | 20 |
219
- | check — 500-char profane | 348 | 277 | 216,204 | 2,155 | 789 | 720 | 762 |
220
- | check — 2,500-char clean | 91 | 88 | 18,900 | 1,225 | 74 | 71 | 6 |
221
- | check — 2,500-char profane | 82 | 62 | 50,454 | 1,084 | 196 | 185 | 186 |
213
+ | Test | be-kind | be-kind (ctx) | leo | bad-words | bad-words + dict | glin (basic) | glin (enhanced) | glin + dict |
214
+ |------|--------:|--------------:|----:|----------:|-----------------:|-------------:|----------------:|------------:|
215
+ | check — clean (short) | 2,102 | 2,569 | 524,380 | 3,161 | 31 | 873 | 863 | 73 |
216
+ | check — profane (short) | 2,236 | 2,139 | 1,124,638 | 3,121 | 29 | 3,378 | 3,296 | 3,315 |
217
+ | check — leet-speak | 1,283 | 1,283 | 587,063 | 3,167 | 28 | 2,824 | 4,222 | 4,266 |
218
+ | clean — profane (short) | 2,454 | 2,172 | 234,566 | 261 | 2 | N/A | N/A | N/A |
219
+ | check — 500-char clean | 398 | 409 | 114,763 | 2,246 | 20 | 273 | 259 | 22 |
220
+ | check — 500-char profane | 339 | 305 | 210,017 | 2,102 | 19 | 831 | 772 | 771 |
221
+ | check — 2,500-char clean | 87 | 87 | 21,570 | 1,161 | 10 | 78 | 77 | 6 |
222
+ | check — 2,500-char profane | 80 | 67 | 43,517 | 1,048 | 10 | 197 | 187 | 190 |
222
223
 
223
224
  **Library versions tested:** `leo-profanity@1.9.0`, `bad-words@4.0.0`, `glin-profanity@3.3.0`
224
225
 
225
226
  **Notes:**
226
- - **be-kind** and **be-kind (ctx)** both load a 34K-word dictionary across 18 languages. Despite this, be-kind is ~3x faster than glin on clean text because it uses a **trie** (O(input_length) matching), while glin uses **linear scanning** over its dictionary (`for (const word of this.words.keys())` — O(dict_size * input_length)). This architectural difference becomes dramatic at large dictionary sizes.
227
+ - **be-kind** and **be-kind (ctx)** both load a 34K-word dictionary across 18 languages. Despite this, be-kind is ~2.4x faster than glin on clean text because it uses a **trie** (O(input_length) matching), while glin uses **linear scanning** over its dictionary (`for (const word of this.words.keys())` — O(dict_size * input_length)). This architectural difference becomes dramatic at large dictionary sizes.
227
228
  - `be-kind (ctx)` adds ~10-20% overhead over default be-kind — context analysis (certainty-delta pattern matching) is cheap.
228
229
  - `leo-profanity` is the fastest but its ~400-word English-only dictionary explains most of the gap.
230
+ - `bad-words + dict` (bad-words + be-kind's 34K words injected) demonstrates the regex bottleneck catastrophically: 31 ops/s on clean short text vs 2,102 for be-kind with the same vocabulary — a **68x slowdown**. bad-words creates a new `RegExp` per word in a `.filter()` loop ([source](https://github.com/web-mech/badwords/blob/master/src/badwords.ts#L91-L103)) — no short-circuiting, so clean and profane text perform identically (~30 ops/s). `clean()` drops to 2 ops/s (vs 2,454 for be-kind). This makes bad-words unsuitable for large multilingual dictionaries.
229
231
  - `glin` with all 24 languages loaded is ~17x slower than English-only due to its linear-scan architecture scaling with dictionary size.
230
- - `glin + dict` (glin enhanced + be-kind's 34K words injected) demonstrates the linear-scan bottleneck: 67 ops/s on clean short text vs 2,560 for be-kind with the same vocabulary. On profane text it short-circuits on first match, so performance is normal (3,335 ops/s).
232
+ - `glin + dict` (glin enhanced + be-kind's 34K words injected) demonstrates the linear-scan bottleneck: 73 ops/s on clean short text vs 2,102 for be-kind with the same vocabulary. glin does short-circuit on first match ([source](https://github.com/GLINCKER/glin-profanity/blob/release/src/Filter.ts) — `return true` inside the word loop), which explains the ~45x speedup on profane text (3,315 ops/s) vs clean text (73 ops/s).
231
233
  - be-kind is the only library with cross-language innocence scoring, romanization support, and context-aware certainty adjustment.
232
234
 
233
235
  Run the benchmark yourself:
@@ -259,7 +261,7 @@ Measures TP rate (recall), FP rate, and F1 across eight test categories (225 lab
259
261
 
260
262
  #### False positives / innocent words — 48 cases (clean only, lower FP rate is better)
261
263
 
262
- Includes adversarial cases (`cum laude`, `Dick Van Dyke`, culinary `faggots`, Swedish `slut`). Recall and F1 are undefined (no profane cases).
264
+ Includes adversarial cases (`cum laude`, `Dick Van Dyke`, culinary `faggots`, Turkish `got`). Recall and F1 are undefined (no profane cases).
263
265
 
264
266
  | Library | FP Rate |
265
267
  |---|---|
@@ -313,9 +315,9 @@ Includes adversarial cases (`cum laude`, `Dick Van Dyke`, culinary `faggots`, Sw
313
315
  | bad-words | 100% | 48% | 73% | 0.65 |
314
316
  | be-kind | 80% | 47% | 60% | 0.59 |
315
317
 
316
- > Semantic context is where all libraries struggle — precision drops below 50% for most. Cases include metalinguistic uses ("the word 'fuck' has uncertain origins"), negation ("she's not a bitch"), and medical context ("rectal cancer screening"). be-kind (ctx) achieves the best F1 (0.76) thanks to context-aware certainty adjustment — boosters confirm profane intent, reducers detect innocent contexts like quotation and negation. leo + dict achieves 100% recall but at the cost of a 47% FP rate.
318
+ > Semantic context is where all libraries struggle — precision drops below 50% for most. Cases include metalinguistic uses, negation, and medical context. be-kind (ctx) achieves the best F1 (0.76) thanks to context-aware certainty adjustment — boosters confirm profane intent, reducers detect innocent contexts like proper nouns and medical terms. leo + dict achieves 100% recall but at the cost of a 47% FP rate.
317
319
 
318
- #### Repeated character evasion — 5 cases (`fuuuuuuuuck`, `cunnnnnnttttt`, etc.)
320
+ #### Repeated character evasion — 5 cases (elongated profanity)
319
321
 
320
322
  No clean cases in this category — FP rate is undefined.
321
323
 
@@ -329,7 +331,7 @@ No clean cases in this category — FP rate is undefined.
329
331
  | leo + dict | 0% | — |
330
332
  | bad-words | 0% | — |
331
333
 
332
- #### Concatenated / no-space evasion — 7 cases (`urASSHOLEbro`, `youFUCKINGidiot`, etc.)
334
+ #### Concatenated / no-space evasion — 7 cases (profanity embedded in concatenated strings)
333
335
 
334
336
  | Library | Recall | Precision | FP Rate | F1 |
335
337
  |---|---|---|---|---|
@@ -343,7 +345,7 @@ No clean cases in this category — FP rate is undefined.
343
345
 
344
346
  #### Challenge cases — 19 cases (semantic disambiguation, embedded substrings, separator evasion)
345
347
 
346
- Hard problems: `cock` as rooster, `ass` as donkey, Swedish `slut` = "end", `puta` in etymological discussion, profanity in concatenated strings, and separator-spaced evasion (`f u c k`, `f_u*c k`, `a.s.s.h.o.l.e`).
348
+ Hard problems: `cock` as rooster, `ass` as donkey, Turkish `got` = "buttocks" vs English "got", profanity in concatenated strings, and separator-spaced evasion (`f u c k`, `f_u*c k`, `a.s.s.h.o.l.e`).
347
349
 
348
350
  | Library | Recall | Precision | FP Rate | F1 |
349
351
  |---|---|---|---|---|
@@ -386,7 +388,7 @@ Returns `true` if the text contains any profanity.
386
388
 
387
389
  ```typescript
388
390
  profanity.check('This is a clean sentence.'); // false
389
- profanity.check('This is a bullshit sentence.'); // true
391
+ profanity.check('This is a b*llsh*t sentence.'); // true
390
392
  profanity.check('What the f#ck is this?'); // true (leet-speak)
391
393
  profanity.check('यह एक चूतिया परीक्षण है।'); // true (Hindi)
392
394
  ```
@@ -404,9 +406,9 @@ Returns a detailed result:
404
406
  - `positions: Array<{ word: string, start: number, end: number }>`
405
407
 
406
408
  ```typescript
407
- const result = profanity.detect('This is fucking bullshit and chutiya.');
409
+ const result = profanity.detect('This is f**king b*llsh*t and chutiya.');
408
410
  console.log(result.hasProfanity); // true
409
- console.log(result.detectedWords); // ['fucking', 'bullshit', 'chutiya']
411
+ console.log(result.detectedWords); // ['f**king', 'b*llsh*t', 'chutiya']
410
412
  console.log(result.severity); // 3 (SEVERE)
411
413
  console.log(result.cleanedText); // "This is ******* ******** and ******."
412
414
  console.log(result.positions); // e.g. [{word: 'fucking', start: 8, end: 15}, ...]
@@ -419,8 +421,8 @@ console.log(result.positions); // e.g. [{word: 'fucking', start: 8, end: 15}, ..
419
421
  Replace each character of profane words with a placeholder (default: `*`).
420
422
 
421
423
  ```typescript
422
- profanity.clean('This contains bullshit.'); // "This contains ********."
423
- profanity.clean('This contains bullshit.', '#'); // "This contains ########."
424
+ profanity.clean('This contains b*llsh*t.'); // "This contains ********."
425
+ profanity.clean('This contains b*llsh*t.', '#'); // "This contains ########."
424
426
  profanity.clean('यह एक चूतिया परीक्षण है।'); // e.g. "यह एक ***** परीक्षण है।"
425
427
  ```
426
428
 
@@ -432,8 +434,8 @@ Replace each profane word with a single placeholder (default: `***`).
432
434
  (If the placeholder is omitted, uses `***`.)
433
435
 
434
436
  ```typescript
435
- profanity.cleanWithPlaceholder('This contains bullshit.'); // "This contains ***."
436
- profanity.cleanWithPlaceholder('This contains bullshit.', '[CENSORED]'); // "This contains [CENSORED]."
437
+ profanity.cleanWithPlaceholder('This contains b*llsh*t.'); // "This contains ***."
438
+ profanity.cleanWithPlaceholder('This contains b*llsh*t.', '[CENSORED]'); // "This contains [CENSORED]."
437
439
  profanity.cleanWithPlaceholder('यह एक चूतिया परीक्षण है।', '####'); // e.g. "यह एक #### परीक्षण है।"
438
440
  ```
439
441
 
@@ -459,8 +461,8 @@ profanity.check('Qué puta situación.'); // true
459
461
  Remove a word or an array of words from the profanity filter.
460
462
 
461
463
  ```typescript
462
- profanity.remove('bullshit');
463
- profanity.check('This is bullshit.'); // false
464
+ profanity.remove('b*llsh*t');
465
+ profanity.check('This is b*llsh*t.'); // false
464
466
 
465
467
  profanity.remove(['mierda', 'puta']);
466
468
  profanity.check('Esto es mierda.'); // false
@@ -473,11 +475,11 @@ profanity.check('Esto es mierda.'); // false
473
475
  Whitelist words so they are never flagged as profane.
474
476
 
475
477
  ```typescript
476
- profanity.addToWhitelist(['fuck', 'idiot','shit']);
477
- profanity.check('He is an fucking idiot.'); // false
478
- profanity.check('Fuck this shit.'); // false
478
+ profanity.addToWhitelist(['f**k', 'idiot','sh*t']);
479
+ profanity.check('He is an f**king idiot.'); // false
480
+ profanity.check('F**k this sh*t.'); // false
479
481
  // Remove from whitelist to restore detection
480
- profanity.removeFromWhitelist(['fuck', 'idiot','shit']);
482
+ profanity.removeFromWhitelist(['f**k', 'idiot','sh*t']);
481
483
  ```
482
484
 
483
485
  ---
@@ -498,7 +500,7 @@ Set the default placeholder character for `clean()`.
498
500
 
499
501
  ```typescript
500
502
  profanity.setPlaceholder('#');
501
- profanity.clean('This is bullshit.'); // "This is ########."
503
+ profanity.clean('This is b*llsh*t.'); // "This is ########."
502
504
  profanity.setPlaceholder('*'); // Reset to default
503
505
  ```
504
506
 
@@ -511,7 +513,7 @@ Options include: `enableLeetSpeak`, `caseSensitive`, `strictMode`, `detectPartia
511
513
 
512
514
  ```typescript
513
515
  profanity.updateConfig({ caseSensitive: true, enableLeetSpeak: false });
514
- profanity.check('FUCK'); // false (if caseSensitive)
516
+ profanity.check('F**K'); // false (if caseSensitive)
515
517
  profanity.updateConfig({ caseSensitive: false, enableLeetSpeak: true });
516
518
  profanity.check('f#ck'); // true
517
519
  ```
@@ -591,9 +593,9 @@ Remove all loaded languages and dynamic words (start with a clean filter).
591
593
 
592
594
  ```typescript
593
595
  profanity.clearList();
594
- profanity.check('fuck'); // false
596
+ profanity.check('f**k'); // false
595
597
  profanity.loadLanguage('english');
596
- profanity.check('fuck'); // true
598
+ profanity.check('f**k'); // true
597
599
  ```
598
600
 
599
601
  ---
@@ -723,7 +725,7 @@ Edit `bekindprofanityfilter.config.json` to enable/disable features. Your IDE wi
723
725
 
724
726
  ## Cross-Language Innocence Scoring
725
727
 
726
- Many words are profane in one language but perfectly innocent in another. For example, "slut" means "end/finish" in Swedish, "fart" means "speed" in Scandinavian languages, and "bite" is a common English word that's vulgar in French. BeKind handles these cross-language collisions automatically using a multi-layer language detection and scoring system.
728
+ Many words are profane in one language but perfectly innocent in another. For example, "got" means "buttocks" in Turkish but is an extremely common English word, "fart" means "speed" in Scandinavian languages, and "bite" is a common English word that's vulgar in French. BeKind handles these cross-language collisions automatically using a multi-layer language detection and scoring system.
727
729
 
728
730
  ### Language Detection Architecture
729
731
 
@@ -745,10 +747,10 @@ Unicode codepoint ranges map characters directly to language families (e.g., Cyr
745
747
  For each word, `scoreWord()` combines all three layers into a single `Record<string, number>` mapping language codes to confidence scores:
746
748
 
747
749
  ```
748
- scoreWord("slut") → { sv: 0.8, en: 0.6, de: 0.3, ... }
749
- Swedish trie match (exact word in vocabulary)
750
- English trie match (partial/common word)
751
- ↑ German ELD n-gram signal
750
+ scoreWord("got") → { en: 0.9, tr: 0.7, de: 0.2, ... }
751
+ English trie match (extremely common word)
752
+ Turkish trie match (profane in Turkish)
753
+ ↑ German ELD n-gram signal
752
754
  ```
753
755
 
754
756
  Layer weights: Script (1.0) > Trie (0.8) > ELD (0.6) > Suffix (0.3+) > Prefix (0.3+)
@@ -758,8 +760,8 @@ Layer weights: Script (1.0) > Trie (0.8) > ELD (0.6) > Suffix (0.3+) > Prefix (0
758
760
  For full text, `detectLanguages()` runs `scoreWord()` on every word and aggregates results into document-level proportions:
759
761
 
760
762
  ```typescript
761
- detectLanguages("Programmet börjar klockan åtta och tar slut vid tio")
762
- // → { languages: [{ language: "de", proportion: 0.6 }, { language: "sv", proportion: 0.3 }, ...] }
763
+ detectLanguages("We got the tickets and went to the show")
764
+ // → { languages: [{ language: "en", proportion: 0.9 }, { language: "tr", proportion: 0.1 }, ...] }
763
765
  ```
764
766
 
765
767
  *Note:* ELD often classifies Swedish as German due to n-gram similarity. The confusion map (see below) compensates for this.
@@ -798,41 +800,37 @@ If profane language dominates (profaneAmp > innocentAmp):
798
800
  Result clamped to [0, 5]
799
801
  ```
800
802
 
801
- The `dampeningFactor` (0-1) controls how aggressively the adjustment works per collision word. Words that are genuinely innocent in another language (e.g., "slut" in Swedish, df=0.9) get heavy dampening, while dangerous dual-meaning words (e.g., "cock" as rooster, df=0.1) barely adjust.
803
+ The `dampeningFactor` (0-1) controls how aggressively the adjustment works per collision word. Words that are genuinely innocent in another language (e.g., "got" in English, df=0.95) get heavy dampening, while dangerous dual-meaning words (e.g., "cock" as rooster, df=0.1) barely adjust.
802
804
 
803
805
  ### End-to-End Flow
804
806
 
805
807
  ```
806
- Text: "Programmet börjar klockan åtta och tar slut vid tio"
807
- ^^^^
808
- "slut" detected (en: s:3 c:4)
808
+ Text: "All proceeds go to the local food bank"
809
+ ^^^^^^
810
+ "go t" bridged → "got" detected (tr: s:4 c:4)
809
811
 
810
812
  1. Collision word matched → check innocent-words map
811
- "slut" → innocent in Swedish (meaning: "end/finish", dampeningFactor: 0.9)
813
+ "got" → innocent in English (meaning: "past tense of get", dampeningFactor: 0.95)
812
814
 
813
815
  2. Language detection triggered (lazy — only runs on collision matches)
814
- Document signal: detectLanguages() → { de: 0.7, en: 0.2, ... }
815
- Word signal: scoreWord("slut") → { sv: 0.8, en: 0.6, ... }
816
+ Document signal: detectLanguages() → { en: 0.9, tr: 0.05, ... }
817
+ Word signal: scoreWord("got") → { en: 0.9, tr: 0.7, ... }
816
818
 
817
819
  3. Weighted average (1.5:1 doc:word ratio)
818
- amplified["sv"] = (0.8 × 1.0 + 0.0 × 1.5) / 2.5 = 0.32
819
- amplified["de"] = (0.0 × 1.0 + 0.7 × 1.5) / 2.5 = 0.42
820
- amplified["en"] = (0.6 × 1.0 + 0.2 × 1.5) / 2.5 = 0.36
820
+ amplified["en"] = (0.9 × 1.0 + 0.9 × 1.5) / 2.5 = 0.90
821
+ amplified["tr"] = (0.7 × 1.0 + 0.05 × 1.5) / 2.5 = 0.31
821
822
 
822
- 4. Confusion map: German signal partial Swedish evidence
823
- effectiveAmp["sv"] = max(0.32, 0.42 × 0.8) = 0.336
824
-
825
- 5. Innocent language (sv: 0.336) > Profane language (en: 0.36)?
826
- → Close, but Swedish trie words boost sv signal further
827
- → Certainty dampened: 4 × (1 - 0.9 × 0.336) = 2.79
828
- → Below flag threshold (s:3 needs c:3+) → NOT FLAGGED ✓
823
+ 4. Innocent language (en: 0.90) > Profane language (tr: 0.31)?
824
+ Yes, English signal dominates
825
+ → Certainty dampened: 4 × (1 - 0.95 × 0.90) = 0.58
826
+ Below flag threshold (s:4 needs c:2+) NOT FLAGGED
829
827
  ```
830
828
 
831
829
  ### Key Features
832
830
 
833
831
  - **29 collision words** mapped across 7 languages (English, Swedish, Norwegian, Danish, German, Dutch, French, Spanish)
834
832
  - **Per-word dampening factors** control adjustment strength:
835
- - `0.9` = heavy dampening (genuinely innocent cross-language, e.g., "slut" in Swedish)
833
+ - `0.95` = heavy dampening (genuinely innocent cross-language, e.g., "got" in English)
836
834
  - `0.1` = barely dampens (almost always used as profanity, e.g., "cock" in English)
837
835
  - **Lazy language detection** — `detectLanguages()` only runs when a collision word is matched (zero performance cost for non-collision text)
838
836
  - **Confusion map** — handles ELD n-gram detector's known misclassifications (e.g., Swedish often classified as German)
@@ -842,6 +840,7 @@ Text: "Programmet börjar klockan åtta och tar slut vid tio"
842
840
 
843
841
  | Word | Profane In | Innocent In | Meaning |
844
842
  |------|-----------|-------------|---------|
843
+ | got | Turkish | English | past tense of "get" (df: 0.95) |
845
844
  | slut | English | Swedish, Danish | end/finish |
846
845
  | fart | English | Swedish, Norwegian, Danish | speed |
847
846
  | hell | English | Swedish, Norwegian | luck |
@@ -903,7 +902,7 @@ Severity reflects the number and variety of detected profanities:
903
902
  - **Mixed Content:** Handles mixed-language and code-switched sentences with language-aware scoring.
904
903
 
905
904
  ```typescript
906
- profanity.check('This is bullshit and चूतिया.'); // true (mixed English/Hindi)
905
+ profanity.check('This is b*llsh*t and चूतिया.'); // true (mixed English/Hindi)
907
906
  profanity.check('Ce mot est merde and पागल.'); // true (French/Hindi)
908
907
  profanity.check('Isso é uma merda.'); // true (Brazilian Portuguese)
909
908
  ```
@@ -916,7 +915,7 @@ For sample words in a language (for UIs, admin, etc):
916
915
 
917
916
  ```typescript
918
917
  import { englishBadWords, hindiBadWords } from 'bekindprofanityfilter';
919
- console.log(englishBadWords.slice(0, 5)); // ["fuck", "shit", ...]
918
+ console.log(englishBadWords.slice(0, 5)); // ["f**k", "sh*t", ...]
920
919
  ```
921
920
 
922
921
  ---
@@ -925,7 +924,7 @@ console.log(englishBadWords.slice(0, 5)); // ["fuck", "shit", ...]
925
924
 
926
925
  - **No wordlist exposure:** There is no `.list()` function for security and encapsulation. Use exported word arrays for samples.
927
926
  - **TRIE-based:** Scales easily to 50,000+ words.
928
- - **Handles leet-speak:** Catches obfuscated variants like `f#ck`, `a55hole`.
927
+ - **Handles leet-speak:** Catches obfuscated variants like `f#ck`, `a55h*le`.
929
928
 
930
929
  ---
931
930
 
@@ -947,7 +946,7 @@ profanity.addToWhitelist(['anal', 'ass']);
947
946
  console.log(profanity.check('He is an associate professor.')); // false
948
947
 
949
948
  // Severity
950
- const result = profanity.detect('This is fucking bullshit and chutiya.');
949
+ const result = profanity.detect('This is f**king b*llsh*t and chutiya.');
951
950
  console.log(ProfanitySeverity[result.severity]); // "SEVERE"
952
951
 
953
952
  // Custom dictionary
@@ -957,7 +956,7 @@ console.log(profanity.check('You barnacle-head!')); // true
957
956
 
958
957
  // Placeholder configuration
959
958
  profanity.setPlaceholder('#');
960
- console.log(profanity.clean('This is bullshit.')); // "This is ########."
959
+ console.log(profanity.clean('This is b*llsh*t.')); // "This is ########."
961
960
  profanity.setPlaceholder('*'); // Reset
962
961
  ```
963
962
 
@@ -991,7 +990,7 @@ A: Yes! BeKind is universal.
991
990
  - ✅ Additional language packs (Arabic, Russian, Japanese, Korean, Chinese, Dutch)
992
991
  - ✅ Romanization detection (Hinglish and other transliterated scripts)
993
992
  - 🚧 Norwegian and Danish trie vocabularies (currently covered via confusion map)
994
- - 🚧 Repeat character compression (normalize "fuuuuccckkkk" "fuck" before matching, avoiding the need to enumerate elongations in the dictionary)
993
+ - 🚧 Repeat character compression (normalize elongated words before matching, avoiding the need to enumerate elongations in the dictionary)
995
994
  - 🚧 Phonetic matching (sounds-like detection)
996
995
  - 🚧 Plugin system for custom detection algorithms
997
996
 
@@ -1001,7 +1000,7 @@ A: Yes! BeKind is universal.
1001
1000
 
1002
1001
  MIT — See [LICENSE](https://github.com/grassroots-labs-org/be-kind-profanity-filter/blob/main/LICENSE)
1003
1002
 
1004
- This project is a fork of [BeKind](https://github.com/ayush-jadaun/allprofanity) by Ayush Jadaun, also licensed under MIT.
1003
+ This project is a fork of [AllProfanity](https://github.com/ayush-jadaun/allprofanity) by Ayush Jadaun, also licensed under MIT.
1005
1004
 
1006
1005
  ---
1007
1006
 
@@ -6,65 +6,26 @@
6
6
  */
7
7
  export const UNIVERSAL_CONTEXT_PATTERNS = [
8
8
  // === REDUCER PATTERNS ===
9
- // Negation patterns
10
- {
11
- type: "negation",
12
- pattern: /\b(not|don't|won't|can't|never|ne|pas|nicht|no|नहीं|不|non|niente|нет|nie)\b.{0,30}PROFANE_WORD/i,
13
- weight: 0.2,
14
- delta: -2,
15
- languages: ["*"],
16
- description: "Negation words that reduce profanity likelihood",
17
- examples: ["not bad", "don't call me that", "never say that"],
18
- },
19
- // Possessive patterns
20
- {
21
- type: "possessive",
22
- pattern: /\b\w+(['s]|du|de|का|की|के|の|del|della|от|od)\s+PROFANE_WORD\b/i,
23
- weight: 0.4,
24
- delta: -1,
25
- languages: ["*"],
26
- description: "Possessive constructions that may be innocent",
27
- examples: ["dog's mouth", "cat's ass", "bird's ass"],
28
- },
29
- // Article patterns
30
- {
31
- type: "article",
32
- pattern: /\b(the|a|an|le|la|les|un|une|der|die|das|ein|eine|el|la|los|las|il|lo|gli|le)\s+PROFANE_WORD\b/i,
33
- weight: 0.6,
34
- delta: -1,
35
- languages: ["*"],
36
- description: "Articles that may indicate neutral reference",
37
- examples: ["the ass of the donkey", "a hell of a time"],
38
- },
39
- // Compound word patterns
40
- {
41
- type: "compound",
42
- pattern: /\b(smart|silly|cute|funny|little|big|old|new|good|bad|nice|sweet)\s*[-]?\s*PROFANE_WORD\b/i,
43
- weight: 0.5,
44
- delta: -1,
45
- languages: ["*"],
46
- description: "Adjective-noun compounds that may be innocent",
47
- examples: ["smart-ass", "silly ass", "cute little ass"],
48
- },
49
- // Proper noun patterns
9
+ // Proper noun before profane word — require two consecutive capitalized words
10
+ // to distinguish "Dick Cheney" from "Some dick"
50
11
  {
51
12
  type: "proper_noun",
52
- pattern: /\b[A-Z][a-z]+\s+PROFANE_WORD\b/,
13
+ pattern: /\b[A-Z][a-z]+\s+PROFANE_WORD\s+[A-Z][a-z]+\b/,
53
14
  weight: 0.3,
54
15
  delta: -2,
55
16
  languages: ["en", "fr", "de", "es", "it"],
56
- description: "Proper nouns followed by potential profanity",
57
- examples: ["Hell Michigan", "Ass River"],
17
+ description: "Profane word sandwiched between proper nouns (place/person name)",
18
+ examples: ["Hell Creek Road", "Fort Dick California"],
58
19
  },
59
- // Quotation patterns
20
+ // Profane word followed by capitalized word (place names like "Ass Mountain")
60
21
  {
61
- type: "quotation",
62
- pattern: /["'«»„"‚'].*PROFANE_WORD.*["'«»„"‚']/i,
63
- weight: 0.7,
22
+ type: "proper_noun",
23
+ pattern: /\bPROFANE_WORD\s+[A-Z][a-z]{2,}\b/,
24
+ weight: 0.3,
64
25
  delta: -2,
65
- languages: ["*"],
66
- description: "Quoted text which may be reporting speech",
67
- examples: ['"Don\'t be an ass"', "'What the hell'"],
26
+ languages: ["en", "fr", "de", "es", "it"],
27
+ description: "Potential profanity followed by proper noun (place/person name)",
28
+ examples: ["Ass Mountain", "Dick Cheney", "Hell Creek"],
68
29
  },
69
30
  // Medical/anatomical context
70
31
  {
@@ -149,28 +110,8 @@ export const UNIVERSAL_CONTEXT_PATTERNS = [
149
110
  * Language-specific context patterns
150
111
  */
151
112
  export const LANGUAGE_SPECIFIC_PATTERNS = {
152
- en: [
153
- {
154
- type: "compound",
155
- pattern: /\b(jack|dumb|smart|bad|kick)\s*[-]?\s*PROFANE_WORD\b/i,
156
- weight: 0.4,
157
- delta: -1,
158
- languages: ["en"],
159
- description: "English-specific compound patterns",
160
- examples: ["jackass", "dumbass", "badass"],
161
- },
162
- ],
163
- fr: [
164
- {
165
- type: "negation",
166
- pattern: /\b(ne|n'|pas|point|jamais|rien|personne)\b.{0,30}PROFANE_WORD/i,
167
- weight: 0.2,
168
- delta: -2,
169
- languages: ["fr"],
170
- description: "French negation patterns",
171
- examples: ["ne pas dire", "jamais ça"],
172
- },
173
- ],
113
+ en: [],
114
+ fr: [],
174
115
  de: [
175
116
  {
176
117
  type: "compound",
@@ -182,17 +123,7 @@ export const LANGUAGE_SPECIFIC_PATTERNS = {
182
123
  examples: ["Scheißzeug", "Arschloch"],
183
124
  },
184
125
  ],
185
- es: [
186
- {
187
- type: "possessive",
188
- pattern: /\b(el|la|los|las)\s+PROFANE_WORD\s+(de|del|de la)\b/i,
189
- weight: 0.4,
190
- delta: -1,
191
- languages: ["es"],
192
- description: "Spanish possessive patterns",
193
- examples: ["el culo de la mesa"],
194
- },
195
- ],
126
+ es: [],
196
127
  };
197
128
  /**
198
129
  * Word-specific context patterns for disambiguating ambiguous profane words.
@@ -1 +1 @@
1
- {"version":3,"file":"context-patterns.js","sourceRoot":"","sources":["../../src/algos/context-patterns.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context-patterns.js","sourceRoot":"","sources":["../../src/algos/context-patterns.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1505,7 +1505,16 @@ export class BeKind {
1505
1505
  ? Math.max(...scoredWords.map((sw) => sw.severity))
1506
1506
  : null;
1507
1507
  const rawSuspicious = (_b = this._suspiciousMatches) !== null && _b !== void 0 ? _b : [];
1508
- const suspiciousPhrases = rawSuspicious.map((sm) => {
1508
+ const suspiciousPhrases = rawSuspicious
1509
+ .filter((sm) => {
1510
+ const entries = innocentWords[sm.word.toLowerCase()];
1511
+ if (!entries || entries.length === 0)
1512
+ return true;
1513
+ // If any innocence entry has a high dampening factor (>= 0.7),
1514
+ // the word is likely innocent and should not be flagged as suspicious
1515
+ return !entries.some(e => e.dampeningFactor >= 0.7);
1516
+ })
1517
+ .map((sm) => {
1509
1518
  const score = this.getWordScore(sm.word);
1510
1519
  const baseScore = score
1511
1520
  ? { severity: score.severity, certainty: score.certainty }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -104,6 +104,8 @@ const innocentWords = {
104
104
  "knockers": [{ language: "en", meaning: "door knockers", dampeningFactor: 0.2 }],
105
105
  "beaver": [{ language: "en", meaning: "animal", dampeningFactor: 0.2 }],
106
106
  "muff": [{ language: "en", meaning: "hand warmer", dampeningFactor: 0.15 }],
107
+ // ── Turkish → innocent in English ──
108
+ "got": [{ language: "en", meaning: "past tense of 'get' — extremely common English word", dampeningFactor: 0.95 }],
107
109
  };
108
110
  export default innocentWords;
109
111
  //# sourceMappingURL=innocent-words.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"innocent-words.js","sourceRoot":"","sources":["../../src/languages/innocent-words.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"innocent-words.js","sourceRoot":"","sources":["../../src/languages/innocent-words.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,11 +1,24 @@
1
1
  {
2
2
  "name": "bekindprofanityfilter",
3
- "version": "0.0.1",
4
- "description": "A multi-language profanity filter with romanization detection, language-aware innocence scoring, leet-speak detection, and cross-language collision handling. Forked from BeKind.",
3
+ "version": "0.0.2",
4
+ "description": "A multi-language profanity filter with romanization detection, language-aware innocence scoring, leet-speak detection, and cross-language collision handling. Forked from AllProfanity.",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
8
8
  "type": "module",
9
+ "scripts": {
10
+ "build": "tsc",
11
+ "test": "jest",
12
+ "test:watch": "jest --watch",
13
+ "test:coverage": "jest --coverage",
14
+ "benchmark": "bun run build && node --expose-gc dist/benchmark/profanity-benchmark.js",
15
+ "benchmark:no-gc": "bun run build && node dist/benchmark/profanity-benchmark.js",
16
+ "benchmark:competitors": "bun run benchmark/competitor-benchmark.ts",
17
+ "benchmark:accuracy": "bun run benchmark/accuracy-benchmark.ts",
18
+ "clean": "rimraf dist coverage",
19
+ "prepare": "bun run clean && bun run build",
20
+ "publish": "bun test && bun run build"
21
+ },
9
22
  "keywords": [
10
23
  "profanity",
11
24
  "filter",
@@ -62,18 +75,5 @@
62
75
  },
63
76
  "dependencies": {
64
77
  "eld": "^2.0.2"
65
- },
66
- "scripts": {
67
- "build": "tsc",
68
- "test": "jest",
69
- "test:watch": "jest --watch",
70
- "test:coverage": "jest --coverage",
71
- "benchmark": "bun run build && node --expose-gc dist/benchmark/profanity-benchmark.js",
72
- "benchmark:no-gc": "bun run build && node dist/benchmark/profanity-benchmark.js",
73
- "benchmark:competitors": "bun run benchmark/competitor-benchmark.ts",
74
- "benchmark:accuracy": "bun run benchmark/accuracy-benchmark.ts",
75
- "clean": "rimraf dist coverage",
76
- "preversion": "bun run test",
77
- "version": "git add -A src"
78
78
  }
79
- }
79
+ }