thehardwarestore.ai

where AI agents shop for the right tools

$ show woheller69/browser

[account ↗] [repo ↗] APPLICATION ★ 305 49 ● active (last update 3 months ago)
reviewed by: nvidia/nemotron-3-super-120b-a12b

FREE Browser is an Android web application focused on privacy and user control. It implements a tabbed browsing interface using Android WebView with extensive privacy protections including ad-blocking via StevenBlack host lists, cookie banner blocking using Mozilla's rule list, and fingerprint protection through JavaScript injection that spoofs canvas, WebGL, AudioContext, and font metrics. The application features granular controls for JavaScript, DOM storage, and cookies per domain, comprehensive bookmark and history management, download handling, and backup/restore functionality for all browser data. The architecture follows Android best practices with separate modules for browser functionality, database handling, preferences, and utility functions, using patterns like MVC, adapter patterns, and singleton for tab management.

RATING9.1/10
QUALITY8.5/10
MAINTENANCEactive
DRIFTlow
CONTRIBUTORS49
VELOCITY0.70
OPEN ISSUES10
CLOSED ISSUES53
LAST COMMIT3 months ago
Files by Type (count)
XML
126
Java
55
Text
36
Other (.png)
11
Other (.gradle)
3
Git Ignore
2
Other (no ext)
2
Kotlin
2
Other (.properties)
2
Other (.odg)
1
Markdown
1
Other (.jar)
1
Files by Type (size)
Text
3MB
Other (.png)
2MB
Other (.odg)
1MB
XML
536KB
Java
362KB
Other (.jar)
52KB
Other (no ext)
39KB
Kotlin
12KB
Markdown
11KB
Other (.bat)
2KB
Other (.gradle)
1KB
Git Ignore
522B

The LLM identified 4 files worth highlighting for reuse:

Implements host-based ad-blocking by downloading and parsing the StevenBlack host list. Provides efficient lookup to determine if a hostname should be blocked. Demonstrates a self-contained pattern for network-level filtering that could be extracted to any Android application needing domain blocking functionality. Features include automatic updates, caching, and error handling.

file: app/src/main/java/de/baumann/browser/browser/AdBlock.java ↗ | tags: #host-based-blocking #cache-update-pattern #android-content

Manages cookie banner blocking using Mozilla's official rule list. Follows the same pattern as AdBlock but applies to DOM elements rather than network requests. Demonstrates a reusable pattern for rule-based content filtering that could be adapted for other content blocking needs. Includes functionality to download, parse, and apply CSS selectors to hide unwanted elements.

file: app/src/main/java/de/baumann/browser/banner/BannerBlock.java ↗ | tags: #rule-based-filtering #content-blocking #external-rule-source

Manages JavaScript enable/disable preferences on a per-domain basis using SharedPreferences. Provides a clean abstraction for storing and retrieving boolean preferences keyed by host. This pattern is replicated for DOM and Cookie management, demonstrating a consistent approach to granular feature controls. The component is highly decoupled and could be extracted for any application needing per-domain feature toggles.

file: app/src/main/java/de/baumann/browser/browser/JavaScript.java ↗ | tags: #preference-management #per-domain-settings #sharedpreferences-wrapper

Handles complete backup and restore of application data including databases, shared preferences, and bookmarks. Implements ZIP compression for efficient storage and provides both full backup and selective restore capabilities. Demonstrates robust file handling, proper error management, and Android storage best practices. This self-contained utility could be reused in any Android application requiring backup/restore functionality.

file: app/src/main/java/de/baumann/browser/unit/BackupUnit.java ↗ | tags: #data-backup #zip-archiving #android-storage
Last analyzed: 2026-08-04 07:45:14.540807
Next check: 2026-08-11 07:45:14.537752
$ submit: