# aadi-011/rd architecture

> Architecture diagram of the GitHub repository aadi-011/rd, 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/aadi-011/rd
- Repository: https://github.com/aadi-011/rd

## Overview

This is a small installable web-app shell: `index.html` is the app entry point, and `service-worker.js` provides asset caching and an offline fallback. The `rd-collect` cache name hints at the app’s purpose, but the empty README and unsampled `index.html` do not establish its user-facing features or how the worker is registered.

Main entry points: [`service-worker.js`](https://github.com/aadi-011/rd/blob/main/service-worker.js) (Service worker), [`index.html`](https://github.com/aadi-011/rd/blob/main/index.html) (Web app), [`manifest.json`](https://github.com/aadi-011/rd/blob/main/manifest.json) (App manifest), [`icons`](https://github.com/aadi-011/rd/tree/main/icons) (App icons)

## Diagram (Mermaid)

```mermaid
flowchart TD

node_user(("User"))
node_browser["Browser"]
node_app["Web app<br/>[index.html]"]
node_worker["Service worker<br/>[service-worker.js]"]
node_cache[("Asset cache<br/>[service-worker.js]")]
node_network["Network"]
node_manifest["App manifest<br/>[manifest.json]"]
node_icons["App icons"]

node_user -->|"opens app"| node_browser
node_browser -->|"loads"| node_app
node_browser -->|"dispatches events"| node_worker
node_worker -->|"caches assets"| node_cache
node_worker -->|"checks requests"| node_cache
node_worker -->|"fetches misses"| node_network
node_worker -->|"stores responses"| node_cache
node_worker -->|"fallback to app"| node_cache
node_browser -.->|"loads metadata"| node_manifest
node_browser -.->|"loads assets"| node_icons

click node_app "https://github.com/aadi-011/rd/blob/main/index.html"
click node_worker "https://github.com/aadi-011/rd/blob/main/service-worker.js"
click node_cache "https://github.com/aadi-011/rd/blob/main/service-worker.js"
click node_manifest "https://github.com/aadi-011/rd/blob/main/manifest.json"
click node_icons "https://github.com/aadi-011/rd/tree/main/icons"

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_user,node_browser toneBlue
class node_app,node_manifest,node_icons toneTeal
class node_worker toneRose
class node_cache toneAmber
class node_network toneIndigo
```

## Components

### Other components

- **User**
- **Browser**
- [Web app](https://github.com/aadi-011/rd/blob/main/index.html): `index.html`
- [Service worker](https://github.com/aadi-011/rd/blob/main/service-worker.js): `service-worker.js`
- [Asset cache](https://github.com/aadi-011/rd/blob/main/service-worker.js): `service-worker.js`
- **Network**
- [App manifest](https://github.com/aadi-011/rd/blob/main/manifest.json): `manifest.json`
- [App icons](https://github.com/aadi-011/rd/tree/main/icons): `icons`

## Connections

- User → Browser: opens app
- Browser → Web app: loads
- Browser → Service worker: dispatches events
- Service worker → Asset cache: caches assets
- Service worker → Asset cache: checks requests
- Service worker → Network: fetches misses
- Service worker → Asset cache: stores responses
- Service worker → Asset cache: fallback to app
- Browser → App manifest: loads metadata
- Browser → App icons: loads assets
