u/Objective-Milk-4863

A QtWebEngine-based lightweight browser with custom ad/telemetry filtering — looking for feedback & contributors

A QtWebEngine-based lightweight browser with custom ad/telemetry filtering — looking for feedback & contributors

#DON'T USE THIS AS THE YOUR PERSONAL BROWSER. THIS IS A POTOTYPE.

Eleuther Browser

I’m tired of living in a web monoculture where "Browser" just means "Chrome with a different skin."

So I built Eleuther.

Link: https://github.com/Dev-Devon/Eleuther


What is it?

It is not a daily driver browser (yet). It’s a Browser Security Monitor.

Standard browsers operate on Trust: You load a page, they execute the code, and hope the site isn't malicious.

Eleuther operates on Paranoia. It sits between QtWebEngine and reality. It treats the web as a hostile data stream that needs to be:

  • Intercepted: Every single request is evaluated by a PolicyEngine that assigns a confidence score.
  • Filtered: We don't just block "ads"; we block telemetry paths on specific domains and scope third-party scripts.
  • Sanitized: A DOM scrubber runs on requestAnimationFrame to surgically remove injected elements without the "space heater" CPU usage of standard ad-blockers.

Why I'm posting

I’m one developer fighting a cat-and-mouse game against Google's ad-injection tactics. The code works, but the architecture needs to evolve before it can truly compete.


The Good:

  • Decision-Based Filtering: It uses a PolicyDecision class (Action + Confidence + Reason) instead of simple True/False blocks.
  • Performance: Zero setInterval loops. It relies purely on MutationObserver and smart diffing.
  • Honest: It logs exactly why it blocked something in the console.

The Bad (The Reality Check):

  • Python Overhead: Wrapping a C++ engine in Python adds a tax. It needs a Rust/C++ module for the network filter to be truly fast.
  • Breakage: It is aggressive. It might break your login pages because it defaults to blocking unknown third-party scripts.
  • Fragility: The DOM scrubbing relies on YouTube not changing their is-promoted attributes.

I need help

I’ve hit a wall with what I can do alone in Python. I’m looking for:

  • Rust/C++ Devs: To help port the NetworkFilter logic into a native module.
  • Heuristics Specialists: To help the DOM scraper survive the next UI update.
  • Feedback: Tell me where my "paranoid" logic is actually just stupid.

If you’re interested in a browser that treats the web as a threat to be managed, check out the repo.

GitHub: https://github.com/Dev-Devon/Eleuther

Let me know what you think. Or tear it apart. I just want to break the monoculture.

The bug I have notice, *The open in next tab when right is going crazy. I try to fix after creating 2 more bug; I realize keep that is good for. *The name load for tab is bit off. If you open a tab and search or open link, the same still is new page until you move between tab to load tab name. *Setting is just for show(I will think to work about it.)

u/Objective-Milk-4863 — 2 days ago