Skip to content

Repository files navigation

Nexora Browser

A privacy-focused Android browser with a powerful download manager, built for control, performance, and a better browsing experience.

Nexora Browser is an Android web browser built around the system WebView / AndroidX WebKit, with a modern Compose-based interface and a dedicated download engine designed to continue downloads even when the app is backgrounded or a connection is interrupted.

Unlike a traditional WebView wrapper, Nexora combines browsing, privacy controls, download management, media handling, reading tools, and browser utilities into a single Android application.

🚧 Status: Active development 📱 Platform: Android 🔐 License: Apache License 2.0


✨ Highlights

  • 🌐 Full WebView-based browsing
  • 🕵️ Private browsing with isolated WebView profiles where supported
  • 🛡️ Built-in ad and tracker blocking
  • 🔗 Automatic removal of common tracking parameters
  • 🔒 Optional HTTPS-only browsing
  • 🌍 Global Privacy Control support
  • 🍪 Configurable third-party cookie controls
  • 📥 Dedicated download manager
  • ⏸️ Pause and resume downloads
  • 🔄 Automatic recovery of interrupted downloads
  • 📶 Wi-Fi / unmetered-only download options
  • 🚀 Multi-connection downloads
  • 🧮 Optional checksum verification
  • 🎬 Media and downloadable-link detection
  • 📺 Optional HLS support for unencrypted streams
  • 📖 Reader mode
  • 🔖 Bookmarks and reading list
  • 🕘 Browsing history
  • 📱 QR scanner
  • 📸 Long screenshots
  • 🌙 Page night mode
  • 🔍 Page zoom
  • 🔐 PIN and biometric app lock
  • 🧩 User scripts
  • 💾 Encrypted bookmark backup and restore
  • 📊 Privacy statistics dashboard
  • ⚙️ Per-origin site permissions

📸 Screenshots

Home Screen Browser Tabs

Private Browsing Downloads Settings

Privacy Dashboard


🌐 Browsing

Nexora provides a full browser experience while keeping the interface focused and customizable.

Tabs

  • Multiple browser tabs
  • Private tabs
  • Duplicate tabs
  • Close other tabs
  • Reopen the most recently closed tab
  • Tab grouping
  • Tab/session management
  • Separate private browsing sessions where supported by the Android WebView implementation

Navigation

  • Back / forward navigation
  • Edge-swipe navigation
  • Configurable toolbar position
  • Top or bottom toolbar
  • Page zoom
  • Page-specific night mode

Search

The start page provides quick access to:

  • Search
  • Shortcuts
  • Weather
  • Headlines
  • Additional browser utilities

Search engines can be configured, with DuckDuckGo used by default.

Private browsing can also use a separate search engine configuration.


🕵️ Private Browsing

Private tabs are designed to keep browsing activity separate from normal browser sessions.

Where supported by the Android WebView implementation, Nexora uses a separate WebView profile for private browsing.

Private browsing is intended to reduce local persistence of browsing activity. However, private browsing does not make you anonymous on the internet.

Websites, network providers, employers, schools, and other parties may still be able to observe network activity depending on the connection and services being used.


🛡️ Privacy & Tracking Protection

Privacy is one of Nexora's core features.

Ad & Tracker Blocking

Nexora includes a built-in hosts-based blocking system.

You can use:

  • The built-in blocklist
  • Imported custom blocklists
  • One-host-per-line custom lists

Blocking can be used for:

  • Advertisements
  • Known trackers
  • Unwanted domains

Blocking statistics are available through the privacy dashboard.


🔗 URL Cleaning

Nexora can remove common tracking parameters from URLs.

For example, URLs containing unnecessary marketing or campaign parameters can be cleaned before navigation.

This helps reduce unnecessary tracking information being carried between pages.


🔒 HTTPS-Only Mode

Nexora provides an optional HTTPS-only browsing mode.

When enabled, the browser attempts to prefer secure HTTPS connections instead of using unencrypted HTTP where possible.


🌍 Global Privacy Control

Nexora supports Global Privacy Control (GPC) as an optional privacy feature.

When enabled, supported websites can receive the user's privacy preference through the appropriate browser signal.


🍪 Third-Party Cookies

Third-party cookies are disabled by default.

Users can enable them when required for websites that depend on third-party authentication or embedded services.


🔐 Site Permissions

Permissions and browser behavior can be controlled on a per-origin basis.

This allows users to manage site-specific behavior rather than applying every setting globally.


📊 Privacy Dashboard

Nexora provides privacy statistics showing blocking activity over time.

The dashboard can provide information such as:

  • Blocked requests
  • Blocked trackers
  • Blocked advertisements
  • Daily activity
  • Weekly activity

The goal is to make privacy protection visible rather than hiding it behind settings.


📥 Download Manager

One of Nexora's main features is its dedicated download system.

Downloads are handled by the application instead of relying entirely on the WebView's built-in download handling.

This allows Nexora to provide more control over downloads.

Download Features

  • Pause downloads
  • Resume downloads
  • Download queue
  • Background downloads
  • Automatic recovery
  • Wi-Fi-only downloads
  • Unmetered-network-only downloads
  • Download speed limiting
  • Multi-connection downloads
  • Optional checksum verification
  • Scheduled downloads
  • Download progress notifications
  • Captured downloadable links

🔄 Interrupted Downloads

Nexora is designed to recover interrupted downloads.

If a download is interrupted because of:

  • Network failure
  • App backgrounding
  • Temporary connectivity loss
  • Process interruption

the download can be picked up again when the application is restarted, where the server and resource support resuming.


🚀 Download Transport

The downloader can use:

  • Cronet as the preferred transport
  • OkHttp as a fallback

The transport layer is separated from the rest of the download system so that download handling can evolve independently from the browser UI.


🧩 Multi-Connection Downloads

For supported servers, Nexora can split a download into multiple connections.

This can improve download performance on suitable networks and servers.

Actual performance depends on:

  • Server support
  • Network conditions
  • File size
  • Connection quality
  • Server throttling
  • Device resources

📶 Network Restrictions

Downloads can be configured to run only when:

  • Connected to Wi-Fi
  • Connected to an unmetered network

This helps prevent large downloads from unexpectedly consuming mobile data.


🧮 Checksum Verification

Optional checksum verification can be used to verify downloaded files when a compatible checksum is available.

This provides an additional integrity check after downloading.


🎬 HLS

Nexora includes optional support for unencrypted HLS streams.

HLS support is intentionally configurable and does not imply support for DRM-protected or encrypted streaming content.


🔎 Download & Media Detection

While browsing, Nexora can detect downloadable resources exposed by webpages.

Detected resources can appear under captured links, allowing the user to choose what should be downloaded.

Supported resources depend on:

  • Website implementation
  • WebView behavior
  • HTTP headers
  • Media format
  • Server configuration
  • Authentication requirements

Nexora does not guarantee that every website or media platform will expose downloadable resources.


📁 Storage

Nexora uses the Android Storage Access Framework (SAF) for selecting download locations.

The application does not require unrestricted "all files" storage access simply to choose a download folder.

Users can select the folder where downloads should be stored through the Android system interface.


⏰ Scheduled Downloads

Scheduled downloads are handled using WorkManager.

This allows downloads to be scheduled without requiring the browser UI to remain open continuously.

Actual execution can still be affected by Android background restrictions, device battery policies, network availability, and other operating-system constraints.


🔔 Foreground Download Service

Active downloads can run through an Android foreground service to provide persistent progress handling and notifications.

This is particularly useful for larger downloads that should continue while the browser is not visible.


📖 Reading Tools

Reader Mode

Reader mode attempts to extract the primary article content from a webpage and present it in a cleaner reading format.

Processing is performed on-device.

Reader mode is intended primarily for article-style pages and may not work correctly with every website.


🔖 Bookmarks

Nexora supports:

  • Saving bookmarks
  • Managing bookmarks
  • Opening saved pages
  • Bookmark persistence
  • Encrypted bookmark backup and restore

📚 Reading List

Pages can be saved to a reading list for later access.


🕘 History

Browsing history is stored locally on the device.

There is no requirement to create a Nexora account.


🧰 Browser Utilities

Nexora includes several additional browser tools.

QR Scanner

Scan QR codes and use the resulting content directly within the browser.

Long Screenshots

Capture long webpage screenshots rather than only the currently visible viewport.

Media Player

Downloaded media can be played through the application's built-in player.

User Scripts

Users can configure scripts that are matched against website origins.

This allows advanced users to customize webpage behavior.


🔐 App Lock

Nexora supports additional application protection through:

  • PIN protection
  • Biometric authentication

This can help protect locally stored browser information from casual access to the application.


💾 Encrypted Backup

Bookmarks can be backed up and restored using an encrypted backup mechanism.

The goal is to make browser data portable without requiring a Nexora account or cloud synchronization service.


🏗️ Architecture

Nexora uses a modular package structure designed to separate browser functionality, downloading, privacy features, UI, and persistence.

High-level organization:

app/
└── src/
    └── main/
        └── java/
            └── ...
                ├── browser/
                │   ├── WebView
                │   ├── sessions
                │   ├── tabs
                │   ├── blocking
                │   └── download capture
                │
                ├── downloader/
                │   ├── transport
                │   ├── queue
                │   ├── storage
                │   └── scheduler
                │
                ├── privacy/
                │   ├── blocklists
                │   ├── URL cleaning
                │   ├── reader mode
                │   └── privacy statistics
                │
                ├── feature/
                │   ├── browser screens
                │   ├── download screens
                │   ├── settings
                │   └── other UI
                │
                └── data/
                    ├── Room
                    └── settings

The project intentionally uses separate activities, rather than relying on a single-activity architecture.


🧱 Technology Stack

Nexora is built using modern Android technologies.

Technology Purpose
Kotlin Primary programming language
Jetpack Compose Application UI
AndroidX WebKit WebView/browser functionality
Hilt Dependency injection
Room Local structured data
DataStore Application preferences/settings
WorkManager Scheduled/background work
Cronet Primary download transport
OkHttp Download transport fallback
Android Foreground Service Persistent download progress
Storage Access Framework User-selected storage locations

🔐 Local-First Design

Nexora does not require a user account.

Browser information such as:

  • History
  • Bookmarks
  • Reading list
  • Download information
  • Browser settings

is designed to remain on the user's device.

Nexora does not require an account simply to browse the web.

However, websites that the user visits can still collect information according to their own privacy policies and technologies.


⚠️ Privacy Disclaimer

Nexora is designed with privacy features, but it should not be interpreted as an anonymity tool.

Using a private tab, tracker blocking, HTTPS-only mode, or GPC does not guarantee anonymity.

For example:

  • Websites can still identify users through their own mechanisms.
  • Network providers can still observe network connections.
  • Search engines can process searches.
  • Websites can use fingerprinting techniques.
  • DNS providers and other network infrastructure may still observe traffic.
  • Third-party services may have their own privacy policies.

Nexora aims to give users more control over browser-level privacy and local data.


🚀 Getting Started

Requirements

The exact Android SDK and build-tool versions are defined by the Gradle configuration included in the repository.

Recommended:

  • Android Studio
  • Android SDK configured for the project
  • JDK version required by the project's Gradle/Android Gradle Plugin configuration
  • Git

Clone the Repository

git clone https://github.com/Sami-dev07/Nexora-Browser.git

Enter the project:

cd Nexora-Browser

Open the project in Android Studio and allow Gradle to synchronize.


🔨 Building

Windows

.\gradlew.bat assembleDebug

Linux / macOS

./gradlew assembleDebug

The generated debug APK will be placed under the project's Gradle build output directory.

You can also build and run the application directly from Android Studio.


🧪 Testing

Run unit tests with:

Windows

.\gradlew.bat test

Linux / macOS

./gradlew test

Instrumentation tests, where available, can be run using the appropriate Android Gradle task or directly through Android Studio.


🗂️ Repository Structure

Nexora-Browser/
│
├── app/
│   └── src/
│       └── main/
│
├── gradle/
│
├── .gitignore
├── LICENSE
├── README.md
├── build.gradle.kts
├── gradle.properties
├── gradlew
├── gradlew.bat
└── settings.gradle.kts

🛣️ Roadmap

Nexora is continuously evolving.

Potential future improvements include:

Browser

  • Improved tab management
  • Better find-in-page experience
  • More browser customization
  • Improved reader mode
  • Additional search engine options
  • Improved site permission management

Privacy

  • More advanced filter-list management
  • Improved blocking statistics
  • Additional privacy controls
  • More granular per-site controls

Downloads

  • Improved download recovery
  • More advanced connection management
  • Better media detection
  • Additional download scheduling options
  • Improved download notifications

User Experience

  • More customization options
  • Improved tablet support
  • Improved large-screen layouts
  • Accessibility improvements
  • Additional themes

Roadmap items may change as development progresses.


🤝 Contributing

Contributions are welcome.

If you want to contribute:

  1. Fork the repository.
  2. Create a new branch.
git checkout -b feature/my-feature
  1. Make your changes.
  2. Test your changes.
  3. Commit your work.
git commit -m "Add my feature"
  1. Push your branch.
git push origin feature/my-feature
  1. Open a Pull Request.

Before submitting a large change, opening an issue to discuss the proposed design can help avoid duplicated work.


🐛 Bug Reports

If you find a bug, please include:

  • Android version
  • Device model
  • Nexora version/commit
  • Steps to reproduce
  • Expected behavior
  • Actual behavior
  • Relevant logs or screenshots

For security-sensitive issues, please avoid publicly posting details that could expose users to exploitation.


🔒 Security

Security issues should be handled responsibly.

If you discover a vulnerability that could affect users, avoid publicly disclosing exploit details before the issue can be investigated and addressed.

A dedicated security reporting process will be provided as the project matures.


📄 License

Nexora Browser is licensed under the Apache License 2.0.

See the LICENSE file for the complete license text.

Copyright © 2026 Sami Ullah


🙏 Acknowledgements

Nexora Browser is built using the Android ecosystem and open-source technologies including:

  • AndroidX
  • Jetpack Compose
  • AndroidX WebKit
  • Hilt
  • Room
  • DataStore
  • WorkManager
  • Cronet
  • OkHttp

Nexora also relies on the Android platform and system WebView for web rendering and browser functionality.


⭐ Support the Project

If you find Nexora useful:

  • ⭐ Star the repository
  • 🐛 Report bugs
  • 💡 Suggest features
  • 🔧 Submit improvements
  • 📢 Share the project

Every contribution helps Nexora improve.


🔗 Repository

GitHub: https://github.com/Sami-dev07/Nexora-Browser


📌 Project Status

Nexora Browser is an independently developed Android browser project focused on combining privacy controls, customizable browsing, and a capable download manager in a single application.

The project is under active development, and features, APIs, and internal architecture may change between versions.

About

Android browser with privacy controls and a download manager that actually keeps going if you background the app or the connection drops.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages