Open source · Manifest V3 · On-device

Filter the fitna,
not the web.

FitnaFilter blurs explicit imagery the instant it loads, blocks harmful domains at the gateway, and gently redirects you toward something better — all processed privately, on your own machine.

  • No account
  • No tracking
  • 100% on-device
0
Domains at the gate
0
Curated blocklists
0
Processed locally

⟡ The Filter Engine ⟡

Three gates, one calm browser.

Every pixel and every link passes through a pipeline built for restraint — fast enough to feel invisible, strict enough to matter.

01

Sees every image

A canvas pipeline reads pixels in two color spaces, scoring skin tones with YCbCr and HSV thresholds — even across cross-origin walls.

02

Filters the harm

Flagged imagery is repainted in your chosen tone before it ever fully renders. Harmful domains are stopped at onBeforeNavigate.

03

Redirects you upward

Instead of a cold block page, a blocked site sends you to a contextual verse of the Qur'an — a pause, not just a wall.

⟡ Try it live ⟡

The filter, in your hands.

No install needed. Flip protection on, pick a tone, dial the sensitivity — watch a mock feed transform exactly like the real thing. Click any covered tile to reveal it on purpose.

Protection
Filter tone
Sensitivity Balanced

3 of 9 images flagged · click a covered tile to reveal

⟡ Real-time, in the page ⟡

From noise to quiet,
before you even notice.

Drag the handle. The left is the open web; the right is the web through FitnaFilter. The hover-eye lets you reveal anything on purpose — never by accident.

  • Flagged & repainted
  • Passed through clean
👁
👁

⟡ Everything in one shield ⟡

Built for focus. Tuned for trust.

Skin-aware image filtering

A dual color-space detector (YCbCr + HSV) finds explicit imagery and repaints it in white, black, or grey — your call. Optional facial-feature handling and a max-safe size keep it fast.

Domain gateway

Harmful sites are stopped before the first byte loads via webNavigation. 500,000+ domains across 27 lists.

Contextual redirects

Blocked navigations land on a Qur'an verse matched to the moment.

Hover-eye reveal

Uncover any filtered element with a click — re-apply with one more.

Per-site modes

Tune how images load site-by-site, with temporary or permanent exclusions.

Private by construction

No servers, no accounts, no telemetry. Every pixel is analysed on your device and never leaves it. There's no backend to leak — because there's no backend at all.

⟡ One click from the toolbar ⟡

Command the shield
without leaving the page.

The popup is for the moment you're in: pause protection, reveal filtered images, show background media, exclude a trusted site, or switch the cover tone without leaving the page.

The options page handles the calmer, permanent decisions: image-filter behavior, hover-eye controls, face-feature removal, safe-size thresholds, auto-unpause timing, saved exclusions, and which hazard or distraction blocklists should stay active.

  • Alt+P Pause / resume filtering
  • Alt+Z Reveal all images
  • Alt+A Reveal all backgrounds
Popup

Fast session controls, tab exclusions, reveal actions, and filter color.

Options

Persistent defaults, blocklist toggles, exclusions, sensitivity, and auto-unpause.

⟡ 27 community blocklists ⟡

Three tiers of defense.

Sourced from The Block List Project and grouped by intent. Vice is always on; the rest is yours to shape.

Always on

Vice

The hard line. Non-negotiable categories that stay enabled by default.

  • abuse
  • drugs
  • gambling
  • porn
  • vaping
Configurable

Hazard

Threats to your security and your data. Toggle what fits your threat model.

  • crypto
  • fraud
  • malware
  • phishing
  • ransomware
  • redirect
  • scam
  • tracking
Configurable

Distraction

The attention economy. Mute the feeds and time-sinks you'd rather not visit.

  • ads
  • facebook
  • fortnite
  • piracy
  • smart-tv
  • tiktok
  • torrent
  • twitter
  • whatsapp
  • youtube

⟡ Under the hood ⟡

A small machine that never phones home.

Instead of a wall, a window

A filter rooted in reminders.

FitnaFilter does more than refuse a page. It gives the stop a reason: purity, restraint, accountability, and the quiet discipline of guarding what the eye is allowed to dwell on.

An-Nur 24:30

قُل لِّلْمُؤْمِنِينَ يَغُضُّوا مِنْ أَبْصَارِهِمْ وَيَحْفَظُوا فُرُوجَهُمْ ذَٰلِكَ أَزْكَىٰ لَهُمْ

The core command is direct: lower the gaze. The product exists to make that command easier before the moment becomes a struggle.

An-Nur 24:31

وَقُل لِّلْمُؤْمِنَاتِ يَغْضُضْنَ مِنْ أَبْصَارِهِنَّ وَيَحْفَظْنَ فُرُوجَهُنَّ

Guarding the gaze is not gendered as a burden. Everyone deserves tools that make modesty practical.

Al-Isra 17:32

وَلَا تَقْرَبُوا الزِّنَىٰ إِنَّهُ كَانَ فَاحِشَةً وَسَاءَ سَبِيلًا

The warning is about approach, not only arrival. Blocking near occasions of harm is part of the design.

Ghafir 40:19

يَعْلَمُ خَائِنَةَ الْأَعْيُنِ وَمَا تُخْفِي الصُّدُورُ

The eye can betray before the hand ever moves. Private browsing still deserves private accountability.

Al-Mu'minun 23:5

وَالَّذِينَ هُمْ لِفُرُوجِهِمْ حَافِظُونَ

Protection is an active habit. The extension helps turn intention into a default environment.

An-Nur 24:21

يَا أَيُّهَا الَّذِينَ آمَنُوا لَا تَتَّبِعُوا خُطُوَاتِ الشَّيْطَانِ

Harm often arrives as steps. FitnaFilter interrupts the trail early: ads, feeds, redirects, and sites that pull the gaze away.

⟡ Privacy is the architecture ⟡

Your browsing never leaves your browser.

FitnaFilter has no backend. Settings live in chrome.storage.sync, image analysis runs on a local canvas, and the only network calls are the ones the page already makes. Nothing about you is collected, stored, or sold — because there's nowhere for it to go.

Zero telemetry No accounts Open Manifest V3

⟡ Up and running in a minute ⟡

Install from source.

No web store yet — and that's fine. Loading unpacked keeps you on the bleeding edge and fully in control.

1

Grab the code

Clone or download the repository from GitHub.

git clone https://github.com/azidancorp/FitnaFilter.git
2

Open extensions

Visit chrome://extensions and switch on Developer mode (top-right).

3

Load unpacked

Click Load unpacked and select the extension/ folder. The shield appears in your toolbar.

⟡ Questions ⟡

Good to know.

Does FitnaFilter send my browsing anywhere?

No. There is no backend and no telemetry. Image analysis runs on a local canvas in your browser and settings sync only through your own Chrome account via chrome.storage.sync.

How does the image filtering actually work?

Each image is drawn to a hidden canvas and scored pixel-by-pixel in two color spaces — YCbCr (Cb 85–128, Cr 142–180) and HSV (hue 0–32°, saturation >15%). Flagged regions are repainted in your chosen tone before the image fully renders.

Why isn't it on the Chrome Web Store?

It's open source and currently distributed via GitHub. You install it unpacked in Developer mode — see the steps above. A store listing may come later.

Can I turn it off for sites I trust?

Yes. Use the popup to pause globally (Alt+P) or add per-site exclusions — temporary or permanent. Per-site image modes let you fine-tune individual domains.

What happens when I hit a blocked domain?

Instead of a blank block page, you're redirected to a contextually chosen verse of the Qur'an — a moment to reset rather than just a closed door.

Build a wall around what you see.

Free, open, and on-device. Add FitnaFilter to your browser and pass everything through the gate.

Works in any Chromium browser · Manifest V3 · MIT-spirited open source