badursun

Ultra-fast multi-language profanity filter, designed Turkish-first and extensible to any language. Catches leet speak, agglutination & evasion patterns. Zero deps, TypeScript, 35 KB.

11
1
100% credibility
Found Mar 02, 2026 at 11 stars -- GitGems finds repos before they trend. Get early access to the next one.
Sign Up Free
AI Analysis
TypeScript
AI Summary

terlik.js is a lightweight library for detecting and filtering profanity in text across Turkish, English, Spanish, and German, smartly handling evasions like leet speak, repetitions, and language-specific word forms.

How It Works

1
🔍 Discover terlik.js

You're running an online chat or forum and want a smart way to keep conversations clean from bad words, even sneaky ones.

2
📥 Add the checker

Grab the profanity filter and connect it to your website or app in just a few simple steps.

3
🧪 Test it out

Try sample messages and watch it instantly spot plain insults, clever spellings, and even word variations across languages.

4
🌍 Pick your language

Choose Turkish, English, Spanish, or German so it understands bad words in your users' words.

5
⚙️ Tweak if needed

Add your own words to catch or ignore specific terms for perfect fits in your community.

Chats stay clean

Your conversations are now automatically polite and safe, with bad words replaced by stars—happy users all around!

Sign up to see the full architecture

4 more

Sign Up Free

Star Growth

See how this repo grew from 11 to 11 stars Sign Up Free
Repurpose This Repo

Repurpose is a Pro feature

Generate ready-to-use prompts for X threads, LinkedIn posts, blog posts, YouTube scripts, and more -- with full repo context baked in.

Unlock Repurpose
AI-Generated Review

What is terlik.js?

terlik.js is an ultra-fast multi-language profanity filter designed Turkish-first and extensible to any language, catching leet speak, agglutination, evasion patterns like separators and repeats. It detects and masks bad words in chat messages or comments via simple APIs like `containsProfanity()` and `clean()`, shipping with Turkish, English, Spanish, and German support out of the box. Zero deps, TypeScript, 35 KB gzipped, runs anywhere from Node to browsers.

Why is it gaining traction?

Stands out with Turkish suffix engine handling 3,000+ forms from 25 roots—perfect for agglutination-heavy evasion that naive blacklists miss—plus modes (strict/balanced/loose) and optional fuzzy matching for typos. Benchmarks hit 193k clean msgs/sec and <1ms post-warmup, with lazy compilation dodging serverless cold starts. Extensible via runtime word adds or full language packs, no rebuilds needed.

Who should use this?

Backend devs building Discord bots, forums, or multiplayer games needing real-time chat filtering, especially Turkish communities dodging creative profanity like "s2k" or "s.i.k.t.i.r". Multi-lang teams at social apps or comment platforms wanting a lightweight drop-in over heavy regex soups. Avoid if single-English and zero false positives are non-negotiable.

Verdict

Solid pick for Turkish-first or multi-language filtering—docs shine with benchmarks, accuracy tables (100% balanced F1 on TR), and live tester—but 11 stars and 1.0% credibility score signal early maturity; test thoroughly in prod. Grab it if you need speed and extensibility without deps bloat.

(198 words)

Sign up to read the full AI review Sign Up Free

Similar repos coming soon.