Ad & tracker blocking
111 hardcoded tracker domains blocked at the network layer — Google, Facebook, Twitter/X, Yahoo, TikTok, Samsung, Xiaomi, and dozens more. Combined with 6 downloadable filter lists.
Open Source / Linux-First / GPL v3
Shroudbyte is a privacy-first browser built on Chromium & PyQt6. It blocks trackers at the network level, spoofs your fingerprint, encrypts your passwords, and routes DNS through HTTPS — all without phoning home.
Every time you open a browser, hundreds of companies track your every click, build a detailed profile of your behavior, and sell it to the highest bidder.
Shroudbyte makes you invisible.
Features
A full-featured privacy browser that puts privacy first, without sacrificing the tools you depend on.
111 hardcoded tracker domains blocked at the network layer — Google, Facebook, Twitter/X, Yahoo, TikTok, Samsung, Xiaomi, and dozens more. Combined with 6 downloadable filter lists.
Automatically strips 34 tracking parameters from every URL: utm_*, fbclid, gclid, msclkid, _ga, _gl, HubSpot, Yandex, and more.
Spoofs Canvas, WebGL, AudioContext, hardware concurrency, device memory, and screen resolution. Seeded PRNG keeps noise consistent per session.
AES-256-GCM + Argon2id key derivation. Auto-fill on load, auto-detect form submissions. Nothing leaves your machine.
Cloudflare DoH by default. Choose off, automatic, or secure mode — or point to your own provider. Optional self-hosted pfSense with HMAC-SHA256 signed queries.
Hides ad elements and cookie banners via CSS injection. MutationObserver watches for dynamically-added content, script interception blocks 13 ad-script patterns.
Enforce HTTPS on all navigations. Local addresses auto-exempted. DNT: 1 header injected on every outgoing request.
Tabs with session restore, bookmarks, history (5,000 entries), downloads, find-in-page, DevTools, print/PDF, 25–500% zoom, private mode.
Layered Protection
DNT: 1 header injected on every request.
How It Works
Every layer of Shroudbyte is designed to minimize your exposure. It's not just a content blocker, and it's not just a browser with a privacy mode checkbox. It's a more deliberate browsing path.
Cosmetic filtering hides 32+ ad-element selectors and cookie banners. MutationObserver catches dynamically injected ad content. Script interception blocks 13 ad-script patterns at document load.
34 tracking parameters stripped from URLs. HTTPS-only enforcement on all navigations. DNT headers on every outgoing request. Local addresses auto-exempted.
111 tracker domains blocked at the network layer with parent-domain matching. DNS-over-HTTPS via Cloudflare. Optional self-hosted pfSense with HMAC-signed queries and TLS cert pinning.
Filter Lists
Six curated filter lists, five enabled by default. Updated from their sources with a single click.
Primary ad-blocking rules
Tracking scripts & pixels
Cookie notices & popups
Social media widgets
Domain-level ad blocklist
Known malware & phishing
Comparison
| Feature | Shroudbyte | Typical Browser | Privacy Browser Baseline |
|---|---|---|---|
| Network-level tracker blocking | 111 domains hardcoded | Usually extension-dependent | Often included |
| Tracking parameter stripping | 34 params stripped | Rare | Sometimes partial |
| Fingerprint resistance | 6 vectors spoofed | Mostly absent | Varies widely |
| Cosmetic filtering | 32+ selectors + MutationObserver | Extension-dependent | Some support |
| DNS-over-HTTPS | Built-in, configurable provider | Some support | Limited |
| Encrypted password vault | AES-256-GCM + Argon2id, local-only | Cloud-synced | Varies |
| HTTPS-only mode | Built in + DNT headers | Some support | Common |
| No telemetry / no phone home | Zero telemetry | Usually phones home | Claims vary |
| Linux-first focus | Built for Linux | Rarely | Sometimes |
| Open source | GPL v3 | Varies | Often |
Architecture
Pure Python. No Electron. No bloated framework. Just PyQt6, Chromium's QtWebEngine, and the standard library.
Tabs, toolbar, menus, settings dialog, content blocking injection, session auto-save (every 30s), keyboard shortcuts.
QWebEngineUrlRequestInterceptor. Network-level domain blocking, DNT header injection, tracking parameter stripping.
Downloads and parses hosts-file and ABP-format filter lists. Generates cosmetic CSS. Batches selectors in groups of 50.
JavaScript injection for Canvas, WebGL, AudioContext, hardware, and screen spoofing. Seeded PRNG per session.
AES-256-GCM vault. Argon2id key derivation (PBKDF2 fallback). UUID4 entry IDs. URL matching strips www. prefix.
Local SOCKS5 proxy with HMAC-authenticated DoH. TLS cert pinning. DNS cache with 30–300s TTL. Async relay.
Custom QWebEngineView/Page. HTTPS-only enforcement, loopback rewriting, popup support, rich context menus.
JSON-based persistence. Bookmarks, history (5,000 max), settings, session state. All data in ~/.shroudbyte/.
Global exception handler. Logs to ~/.shroudbyte/crash.log (512 KB max, auto-rotates). Shows Qt dialog on crash.
Shortcuts
Familiar shortcuts. No surprises.
Get Started
$ git clone https://github.com/WebWalker3D/Shroudbyte.git
$ cd Shroudbyte && pip install -r requirements.txt
$ python3 run.py
✓ Shroudbyte is running. Happy private browsing.
cp shroudbyte.desktop ~/.local/share/applications/
chmod +x shroudbyte.sh
HMAC-SHA256 signed queries, replay protection, TLS cert pinning.
ssh admin@pfsense "sh -s" < pfsense/deploy.sh
Data Storage
Everything lives in ~/.shroudbyte/. No cloud. No accounts. No sync servers.
Trust & Privacy
Shroudbyte collects no data. No analytics, no crash reporting to external servers,
no usage metrics. Everything stays on your machine in ~/.shroudbyte/.