# wchen342/ungoogled-chromium-android architecture

> Architecture diagram of the GitHub repository wchen342/ungoogled-chromium-android, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/wchen342/ungoogled-chromium-android
- Repository: https://github.com/wchen342/ungoogled-chromium-android

## Overview

This repository is an Android Chromium customization patch set, not the browser’s full source tree. The documented product workflow is an Android user browsing with a Chromium-derived browser or WebView, with patches removing Google-service dependencies and adding Android-specific and privacy-oriented behavior. The graph shows documented customization targets and capability areas; source excerpts were unavailable, so it does not infer internal runtime calls or feature wiring.

Main entry points: [`patches/ungoogled-chromium-android`](https://github.com/wchen342/ungoogled-chromium-android/tree/master/patches/ungoogled-chromium-android) (Android changes), [`patches/Vanadium`](https://github.com/wchen342/ungoogled-chromium-android/tree/master/patches/Vanadium) (WebView changes), [`patches/Bromite`](https://github.com/wchen342/ungoogled-chromium-android/tree/master/patches/Bromite) (Bromite features), [`patches/ungoogled-chromium-android/Enable-update-notification.patch`](https://github.com/wchen342/ungoogled-chromium-android/blob/master/patches/ungoogled-chromium-android/Enable-update-notification.patch) (Update notification)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_android["Android variants"]
  node_android_patches["Android changes"]
  node_webview_patches["WebView changes"]
end

subgraph group_privacy["Privacy changes"]
  node_gms_removal["Google service removal"]
  node_privacy_defaults["Privacy defaults"]
end

subgraph group_features["Browser features"]
  node_bromite_features["Bromite features"]
  node_android_features["Android features"]
  node_search_engines["Search options"]
  node_update_notice["Update notification"]
end

node_user(("Android user"))
node_browser["Chromium browser"]
node_webview["System WebView"]
node_web(("Web sites"))
node_update_server(("Update server"))

node_user -->|"uses"| node_browser
node_user -->|"uses"| node_webview
node_browser -->|"requests pages"| node_web
node_android_patches -->|"customizes"| node_browser
node_webview_patches -->|"customizes"| node_webview
node_gms_removal -->|"removes dependencies"| node_browser
node_privacy_defaults -->|"sets defaults"| node_browser
node_bromite_features -->|"adds features"| node_browser
node_android_features -->|"adds features"| node_browser
node_search_engines -->|"adds options"| node_browser
node_update_notice -->|"adds notification"| node_browser
node_browser -.->|"periodic GET"| node_update_server

click node_android_patches "https://github.com/wchen342/ungoogled-chromium-android/tree/master/patches/ungoogled-chromium-android"
click node_webview_patches "https://github.com/wchen342/ungoogled-chromium-android/tree/master/patches/Vanadium"
click node_gms_removal "https://github.com/wchen342/ungoogled-chromium-android/tree/master/patches/ungoogled-chromium-android"
click node_privacy_defaults "https://github.com/wchen342/ungoogled-chromium-android/tree/master/patches/Vanadium"
click node_bromite_features "https://github.com/wchen342/ungoogled-chromium-android/tree/master/patches/Bromite"
click node_android_features "https://github.com/wchen342/ungoogled-chromium-android/tree/master/patches/ungoogled-chromium-android"
click node_search_engines "https://github.com/wchen342/ungoogled-chromium-android/tree/master/patches/ungoogled-chromium-android"
click node_update_notice "https://github.com/wchen342/ungoogled-chromium-android/blob/master/patches/ungoogled-chromium-android/Enable-update-notification.patch"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_android_patches,node_webview_patches,node_user,node_browser,node_webview toneBlue
class node_gms_removal,node_privacy_defaults toneAmber
class node_bromite_features,node_android_features,node_search_engines,node_update_notice,node_update_server toneMint
class node_web toneIndigo
```

## Components

### Android variants

- [Android changes](https://github.com/wchen342/ungoogled-chromium-android/tree/master/patches/ungoogled-chromium-android): `patches/ungoogled-chromium-android`
- [WebView changes](https://github.com/wchen342/ungoogled-chromium-android/tree/master/patches/Vanadium): `patches/Vanadium`

### Privacy changes

- [Google service removal](https://github.com/wchen342/ungoogled-chromium-android/tree/master/patches/ungoogled-chromium-android): `patches/ungoogled-chromium-android`
- [Privacy defaults](https://github.com/wchen342/ungoogled-chromium-android/tree/master/patches/Vanadium): `patches/Vanadium`

### Browser features

- [Bromite features](https://github.com/wchen342/ungoogled-chromium-android/tree/master/patches/Bromite): `patches/Bromite`
- [Android features](https://github.com/wchen342/ungoogled-chromium-android/tree/master/patches/ungoogled-chromium-android): `patches/ungoogled-chromium-android`
- [Search options](https://github.com/wchen342/ungoogled-chromium-android/tree/master/patches/ungoogled-chromium-android): `patches/ungoogled-chromium-android`
- [Update notification](https://github.com/wchen342/ungoogled-chromium-android/blob/master/patches/ungoogled-chromium-android/Enable-update-notification.patch): `patches/ungoogled-chromium-android/Enable-update-notification.patch`

### Other components

- **Android user**
- **Chromium browser**
- **System WebView**
- **Web sites**
- **Update server**

## Connections

- Android user → Chromium browser: uses
- Android user → System WebView: uses
- Chromium browser → Web sites: requests pages
- Android changes → Chromium browser: customizes
- WebView changes → System WebView: customizes
- Google service removal → Chromium browser: removes dependencies
- Privacy defaults → Chromium browser: sets defaults
- Bromite features → Chromium browser: adds features
- Android features → Chromium browser: adds features
- Search options → Chromium browser: adds options
- Update notification → Chromium browser: adds notification
- Chromium browser → Update server: periodic GET
