# coinimain/kenyanmmf architecture

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

- Interactive diagram: https://gitdiagram.com/coinimain/kenyanmmf
- Repository: https://github.com/coinimain/kenyanmmf

## Overview

This is a Kenya-focused personal-finance and investing site: readers browse educational articles and use calculators and market-data tools to inform decisions. The clearest sampled runtime flow is the MMF calculator loading fund data, obtaining a USD–KES rate, and calculating estimated returns. The tree also shows bond, special-fund, AI-readiness, currency-conversion, and NSE dashboard capabilities. Their source files and datasets are represented, but links are omitted where the sampled excerpts do not establish runtime wiring.

Main entry points: [`blog.md`](https://github.com/coinimain/kenyanmmf/blob/main/blog.md) (Blog listing), [`script.js`](https://github.com/coinimain/kenyanmmf/blob/main/script.js) (MMF returns logic), [`index.html`](https://github.com/coinimain/kenyanmmf/blob/main/index.html) (MMF calculator), [`treasury-bond-calculator.md`](https://github.com/coinimain/kenyanmmf/blob/main/treasury-bond-calculator.md) (Treasury bond tool)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_content["Finance content"]
  node_articles["Finance articles"]
  node_blog["Blog listing<br/>[blog.md]"]
  node_categories["Topic categories"]
end

subgraph group_calculators["Financial calculators"]
  node_mmf_page["MMF calculator<br/>[index.html]"]
  node_mmf_logic["MMF returns logic<br/>[script.js]"]
  node_fund_data[("Fund rates<br/>[data.csv]")]
  node_bond_page["Treasury bond tool"]
  node_bond_logic["Bond calculations"]
  node_bond_data[("Bond datasets")]
  node_special_page["Special funds tool"]
  node_special_logic["Special funds logic"]
  node_special_data[("Special fund data")]
  node_ai_page["AI readiness tool"]
  node_ai_logic["AI readiness logic"]
  node_currency_logic["Currency converter"]
end

subgraph group_markets["Market data"]
  node_nse_page["NSE dashboard"]
  node_nse_logic["Market dashboard logic"]
  node_nse_data[("NSE market data")]
  node_indices_data[("NSE index data")]
end

subgraph group_site["Site experience"]
  node_layouts["Page layouts"]
  node_search["Blog search<br/>[blog-search.js]"]
  node_contact["Contact form<br/>[contact-inline.js]"]
end

node_reader(("Reader"))
node_fx_api{{"Exchange-rate API"}}
node_contact_service{{"Form service"}}

node_reader -->|"browses"| node_blog
node_reader -->|"opens"| node_mmf_page
node_reader -->|"opens"| node_bond_page
node_reader -->|"opens"| node_special_page
node_reader -->|"opens"| node_ai_page
node_reader -->|"opens"| node_nse_page
node_reader -->|"submits"| node_contact
node_blog -->|"lists"| node_articles
node_blog -->|"links"| node_categories
node_blog -->|"filters"| node_search
node_mmf_page -->|"runs"| node_mmf_logic
node_mmf_logic -->|"loads"| node_fund_data
node_mmf_logic -.->|"fetches rates"| node_fx_api
node_bond_page -->|"runs"| node_bond_logic
node_special_page -->|"runs"| node_special_logic
node_ai_page -->|"runs"| node_ai_logic
node_nse_page -->|"runs"| node_nse_logic
node_layouts -->|"renders"| node_articles
node_contact -->|"posts form"| node_contact_service

click node_articles "https://github.com/coinimain/kenyanmmf/tree/main/_posts"
click node_blog "https://github.com/coinimain/kenyanmmf/blob/main/blog.md"
click node_categories "https://github.com/coinimain/kenyanmmf/tree/main/category"
click node_mmf_page "https://github.com/coinimain/kenyanmmf/blob/main/index.html"
click node_mmf_logic "https://github.com/coinimain/kenyanmmf/blob/main/script.js"
click node_fund_data "https://github.com/coinimain/kenyanmmf/blob/main/data.csv"
click node_bond_page "https://github.com/coinimain/kenyanmmf/blob/main/treasury-bond-calculator.md"
click node_bond_logic "https://github.com/coinimain/kenyanmmf/blob/main/assets/js/treasury-bond-calculator.js"
click node_bond_data "https://github.com/coinimain/kenyanmmf/blob/main/kenya-bonds-data.csv"
click node_special_page "https://github.com/coinimain/kenyanmmf/blob/main/special-funds-calculator.md"
click node_special_logic "https://github.com/coinimain/kenyanmmf/blob/main/assets/js/special-funds-calculator.js"
click node_special_data "https://github.com/coinimain/kenyanmmf/blob/main/special-funds-data.csv"
click node_ai_page "https://github.com/coinimain/kenyanmmf/blob/main/ai-readiness-calculator.md"
click node_ai_logic "https://github.com/coinimain/kenyanmmf/blob/main/assets/js/ai-readiness-calculator.js"
click node_currency_logic "https://github.com/coinimain/kenyanmmf/blob/main/assets/js/omr-kes-converter.js"
click node_nse_page "https://github.com/coinimain/kenyanmmf/blob/main/nse-market-dashboard.md"
click node_nse_logic "https://github.com/coinimain/kenyanmmf/blob/main/assets/js/nse-market-dashboard.js"
click node_nse_data "https://github.com/coinimain/kenyanmmf/blob/main/nse-market-prices.csv"
click node_indices_data "https://github.com/coinimain/kenyanmmf/blob/main/nse-market-indices.csv"
click node_layouts "https://github.com/coinimain/kenyanmmf/tree/main/_layouts"
click node_search "https://github.com/coinimain/kenyanmmf/blob/main/blog-search.js"
click node_contact "https://github.com/coinimain/kenyanmmf/blob/main/contact-inline.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_articles,node_blog,node_categories toneBlue
class node_mmf_page,node_mmf_logic,node_fund_data,node_bond_page,node_bond_logic,node_bond_data,node_special_page,node_special_logic,node_special_data,node_ai_page,node_ai_logic,node_currency_logic toneAmber
class node_nse_page,node_nse_logic,node_nse_data,node_indices_data,node_fx_api toneMint
class node_layouts,node_search,node_contact toneRose
class node_reader,node_contact_service toneIndigo
```

## Components

### Finance content

- [Finance articles](https://github.com/coinimain/kenyanmmf/tree/main/_posts): `_posts`
- [Blog listing](https://github.com/coinimain/kenyanmmf/blob/main/blog.md): `blog.md`
- [Topic categories](https://github.com/coinimain/kenyanmmf/tree/main/category): `category`

### Financial calculators

- [MMF calculator](https://github.com/coinimain/kenyanmmf/blob/main/index.html): `index.html`
- [MMF returns logic](https://github.com/coinimain/kenyanmmf/blob/main/script.js): `script.js`
- [Fund rates](https://github.com/coinimain/kenyanmmf/blob/main/data.csv): `data.csv`
- [Treasury bond tool](https://github.com/coinimain/kenyanmmf/blob/main/treasury-bond-calculator.md): `treasury-bond-calculator.md`
- [Bond calculations](https://github.com/coinimain/kenyanmmf/blob/main/assets/js/treasury-bond-calculator.js): `assets/js/treasury-bond-calculator.js`
- [Bond datasets](https://github.com/coinimain/kenyanmmf/blob/main/kenya-bonds-data.csv): `kenya-bonds-data.csv`
- [Special funds tool](https://github.com/coinimain/kenyanmmf/blob/main/special-funds-calculator.md): `special-funds-calculator.md`
- [Special funds logic](https://github.com/coinimain/kenyanmmf/blob/main/assets/js/special-funds-calculator.js): `assets/js/special-funds-calculator.js`
- [Special fund data](https://github.com/coinimain/kenyanmmf/blob/main/special-funds-data.csv): `special-funds-data.csv`
- [AI readiness tool](https://github.com/coinimain/kenyanmmf/blob/main/ai-readiness-calculator.md): `ai-readiness-calculator.md`
- [AI readiness logic](https://github.com/coinimain/kenyanmmf/blob/main/assets/js/ai-readiness-calculator.js): `assets/js/ai-readiness-calculator.js`
- [Currency converter](https://github.com/coinimain/kenyanmmf/blob/main/assets/js/omr-kes-converter.js): `assets/js/omr-kes-converter.js`

### Market data

- [NSE dashboard](https://github.com/coinimain/kenyanmmf/blob/main/nse-market-dashboard.md): `nse-market-dashboard.md`
- [Market dashboard logic](https://github.com/coinimain/kenyanmmf/blob/main/assets/js/nse-market-dashboard.js): `assets/js/nse-market-dashboard.js`
- [NSE market data](https://github.com/coinimain/kenyanmmf/blob/main/nse-market-prices.csv): `nse-market-prices.csv`
- [NSE index data](https://github.com/coinimain/kenyanmmf/blob/main/nse-market-indices.csv): `nse-market-indices.csv`

### Site experience

- [Page layouts](https://github.com/coinimain/kenyanmmf/tree/main/_layouts): `_layouts`
- [Blog search](https://github.com/coinimain/kenyanmmf/blob/main/blog-search.js): `blog-search.js`
- [Contact form](https://github.com/coinimain/kenyanmmf/blob/main/contact-inline.js): `contact-inline.js`

### Other components

- **Reader**
- **Exchange-rate API**
- **Form service**

## Connections

- Reader → Blog listing: browses
- Reader → MMF calculator: opens
- Reader → Treasury bond tool: opens
- Reader → Special funds tool: opens
- Reader → AI readiness tool: opens
- Reader → NSE dashboard: opens
- Reader → Contact form: submits
- Blog listing → Finance articles: lists
- Blog listing → Topic categories: links
- Blog listing → Blog search: filters
- MMF calculator → MMF returns logic: runs
- MMF returns logic → Fund rates: loads
- MMF returns logic → Exchange-rate API: fetches rates
- Treasury bond tool → Bond calculations: runs
- Special funds tool → Special funds logic: runs
- AI readiness tool → AI readiness logic: runs
- NSE dashboard → Market dashboard logic: runs
- Page layouts → Finance articles: renders
- Contact form → Form service: posts form
