Median Browser is a local-first Android browser built on Android System WebView in native Java, featuring ad blocking, an encrypted local password vault, user scripts, and offline reading, with a package of only about 215 KB and no telemetry or cloud sync.
- 2.3.0
- Published at
- Aug 14, 2026
- 552
- Stars
- 4,422
- Download
- Synced at
- 15d ago
Latest release
2.3.0Aug 14, 2026, 06:45 PMREADME
Project Overview
Median Browser is a local-first browser built on top of Android System WebView and written in native Java. It does not rely on a private Chromium kernel, does not bundle ad, analytics, or crash-reporting SDKs, and has no developer-run account or sync server. Bookmarks, history, passwords, user scripts, and download records are stored only on your device by default. It is known for extreme lightweight design: the package is only about 215 KB, whereas typical commercial browsers are tens to hundreds of MB. Its motto is endless progress, endless optimization, endless speed, with clear commitments to privacy, security, and customization.
Key Features
- Ad blocking: a filter engine based on ABP/hosts rules, optimized for WebView request callbacks, with online subscriptions, custom filter sources, element hiding, tracking-parameter cleanup, and per-site toggles.
- Local password vault: an encrypted local vault based on Android Keystore and AES-GCM, with HTTPS autofill enabled by default and automatic save prompts after login, supporting multiple accounts, multi-step logins, Shadow DOM, and same-origin iframes.
- Download center: segmented downloads, pause and resume, breakpoint continuation, and adaptive retry, kept alive by a foreground service so large files are not interrupted.
- Offline and reading: local MHTML offline archiving that keeps page bytes on the device, plus reading mode, system text-to-speech, web translation, and in-page find.
- User scripts: a Tampermonkey-like user script engine with native document-start bridge injection, explicit permission declarations, @connect target validation, and a GM compatibility layer.
- Private window: a private browsing session fully isolated from normal tabs; when isolation cannot be guaranteed it clearly warns the user instead of pretending to be incognito.
- Media sniffing: a bounded, metadata-only media resource index covering HLS/DASH/Smooth Streaming manifest parsing, showing tracks, resolution, bitrate, encryption, and live/VOD flags.
- Performance modes: three switchable rendering modes (performance, standard, power-saving) with real-time frame-time and dropped-frame monitoring, plus automatic recovery of unresponsive renderer processes.
- TLS certificate inspection: on-demand independent certificate probing that shows the certificate chain, cipher suites, issuer, and validity, only when the user triggers it.
- Encrypted backup and gesture navigation: a password-encrypted portable backup that needs no server, plus edge-swipe back/forward gestures and fine-grained per-site permissions.
Target Audience
- Privacy-conscious Android users who do not want their browsing data collected or uploaded.
- Power users who need ad blocking, user scripts, and offline reading.
- Minimalists who want extreme lightness instead of a huge installer.
- Users who prefer managing passwords locally rather than with cloud password services.
Quick Start
- Get the Median Browser installer (APK) from the project release page or a build artifact.
- Install and open the app on an Android 8.0 or later device.
- Type a URL in the address bar to start browsing; local data storage is enabled by default.
- In Settings, enable ad blocking, add filter subscriptions, and turn on password autofill as needed.
- Use the private window for private browsing; the session is cleared on exit.
- To build from source: install the Android development environment and Java 17, then build with Gradle (AGP 8.13.2); the target platform is Android 8.0 (API 26) and above.
Core Advantages
- Extremely lightweight: the package is only about 215 KB, far smaller than typical commercial browsers.
- Privacy first: no analytics, ads, telemetry, or developer-run cloud sync service.
- Local data: bookmarks, history, passwords, and scripts stay on the device, with passwords encrypted via Keystore and AES-GCM.
- High feature density: despite its tiny size, it packs ad blocking, a password vault, user scripts, offline archiving, media sniffing, and many other modules.
- System-updated engine: uses the system WebView, which follows system security updates.
System Requirements
- OS: Android 8.0 (API 26) and above; compile and target SDK 36.
- Architecture: an Android app whose rendering engine is Android System WebView.
- Additional dependencies: Java 17 and Gradle are required for building from source.
Notes
- The source is publicly readable, but it uses an all-rights-reserved source-available license and is not open source in the MIT/GPL sense; read the LICENSE before redistribution.
- Data such as the password vault and download records is stored only on the device and will be lost if the app data is cleared; make encrypted backups in advance.
- User scripts are third-party code with higher privileges than normal web pages; install them only from trusted sources.