# aiiluv/kareem-website architecture

> Architecture diagram of the GitHub repository aiiluv/kareem-website, 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/aiiluv/kareem-website
- Repository: https://github.com/aiiluv/kareem-website

## Overview

Kareem is a static, browser-based worship website. A visitor uses its pages for dua, dzikr, prayer schedules, zakat calculations, and worship tracking. The sampled scripts show local page interactions and one external prayer-time API; the README documents the dua collection, but no dua-specific script was sampled. Links between pages and scripts are omitted because their HTML wiring was not inspected.

Main entry points: [`script-waktusholat.js`](https://github.com/aiiluv/kareem-website/blob/main/script-waktusholat.js) (Schedule Loader), [`index.html`](https://github.com/aiiluv/kareem-website/blob/main/index.html) (Home), [`doa.html`](https://github.com/aiiluv/kareem-website/blob/main/doa.html) (Dua Collection), [`dzikir.html`](https://github.com/aiiluv/kareem-website/blob/main/dzikir.html) (Dzikr Page)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_pages["Website Pages"]
  node_home["Home<br/>[index.html]"]
  node_dua["Dua Collection<br/>[doa.html]"]
  node_dzikr["Dzikr Page<br/>[dzikir.html]"]
  node_prayer_page["Prayer Page<br/>[waktu-shalat.html]"]
  node_tracker_page["Tracker Page<br/>[tracker.html]"]
  node_zakat_page["Zakat Page<br/>[zakat.html]"]
end

subgraph group_worship["Worship Tools"]
  node_dzikr_logic["Dzikr Counter<br/>[script-zikir.js]"]
end

subgraph group_prayer["Prayer Times"]
  node_schedule_logic["Schedule Loader"]
  node_prayer_api["MyQuran API"]
end

subgraph group_tracking["Tracking and Zakat"]
  node_tracker_logic["Tracker Logic<br/>[script-tracker.js]"]
  node_zakat_logic["Zakat Calculator<br/>[script-zakat.js]"]
end

node_visitor(("Visitor"))

node_visitor -->|"opens"| node_home
node_visitor -->|"opens"| node_dua
node_visitor -->|"opens"| node_dzikr
node_visitor -->|"opens"| node_prayer_page
node_visitor -->|"opens"| node_tracker_page
node_visitor -->|"opens"| node_zakat_page
node_schedule_logic -->|"fetches schedules"| node_prayer_api
node_prayer_api -->|"returns schedule data"| node_schedule_logic

click node_home "https://github.com/aiiluv/kareem-website/blob/main/index.html"
click node_dua "https://github.com/aiiluv/kareem-website/blob/main/doa.html"
click node_dzikr "https://github.com/aiiluv/kareem-website/blob/main/dzikir.html"
click node_prayer_page "https://github.com/aiiluv/kareem-website/blob/main/waktu-shalat.html"
click node_tracker_page "https://github.com/aiiluv/kareem-website/blob/main/tracker.html"
click node_zakat_page "https://github.com/aiiluv/kareem-website/blob/main/zakat.html"
click node_dzikr_logic "https://github.com/aiiluv/kareem-website/blob/main/script-zikir.js"
click node_schedule_logic "https://github.com/aiiluv/kareem-website/blob/main/script-waktusholat.js"
click node_tracker_logic "https://github.com/aiiluv/kareem-website/blob/main/script-tracker.js"
click node_zakat_logic "https://github.com/aiiluv/kareem-website/blob/main/script-zakat.js"

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_home,node_dua,node_dzikr,node_prayer_page,node_tracker_page,node_zakat_page toneBlue
class node_dzikr_logic toneAmber
class node_schedule_logic,node_prayer_api toneMint
class node_tracker_logic,node_zakat_logic toneRose
class node_visitor toneIndigo
```

## Components

### Website Pages

- [Home](https://github.com/aiiluv/kareem-website/blob/main/index.html): `index.html`
- [Dua Collection](https://github.com/aiiluv/kareem-website/blob/main/doa.html): `doa.html`
- [Dzikr Page](https://github.com/aiiluv/kareem-website/blob/main/dzikir.html): `dzikir.html`
- [Prayer Page](https://github.com/aiiluv/kareem-website/blob/main/waktu-shalat.html): `waktu-shalat.html`
- [Tracker Page](https://github.com/aiiluv/kareem-website/blob/main/tracker.html): `tracker.html`
- [Zakat Page](https://github.com/aiiluv/kareem-website/blob/main/zakat.html): `zakat.html`

### Worship Tools

- [Dzikr Counter](https://github.com/aiiluv/kareem-website/blob/main/script-zikir.js): `script-zikir.js`

### Prayer Times

- [Schedule Loader](https://github.com/aiiluv/kareem-website/blob/main/script-waktusholat.js): `script-waktusholat.js`
- **MyQuran API**

### Tracking and Zakat

- [Tracker Logic](https://github.com/aiiluv/kareem-website/blob/main/script-tracker.js): `script-tracker.js`
- [Zakat Calculator](https://github.com/aiiluv/kareem-website/blob/main/script-zakat.js): `script-zakat.js`

### Other components

- **Visitor**

## Connections

- Visitor → Home: opens
- Visitor → Dua Collection: opens
- Visitor → Dzikr Page: opens
- Visitor → Prayer Page: opens
- Visitor → Tracker Page: opens
- Visitor → Zakat Page: opens
- Schedule Loader → MyQuran API: fetches schedules
- MyQuran API → Schedule Loader: returns schedule data
