# fabricio-antonio/meus10centavos architecture

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

- Interactive diagram: https://gitdiagram.com/fabricio-antonio/meus10centavos
- Repository: https://github.com/fabricio-antonio/meus10centavos

## Overview

This repository contains browser-side JavaScript for a Marmite-themed static site, alongside content and mirrored asset trees. The user-facing flow is interaction with a rendered page: theme and navigation controls respond in the browser, while search loads a generated index and presents matching page links. The excerpts show theme switching, color-scheme selection, menus, smooth scrolling, search, and Giscus theme handling. Several copies are nearly identical; the graph retains the indexed variants without implying they call one another. No README or site-generation runtime was provided, so generation and rendering stages are not mapped.

Main entry points: [`content/static/search.js`](https://github.com/fabricio-antonio/meus10centavos/blob/main/content/static/search.js) (Search interface), [`content/default/static/search.js`](https://github.com/fabricio-antonio/meus10centavos/blob/main/content/default/static/search.js) (Default search), [`content/site/static/search.js`](https://github.com/fabricio-antonio/meus10centavos/blob/main/content/site/static/search.js) (Site search copy), [`site/static/search.js`](https://github.com/fabricio-antonio/meus10centavos/blob/main/site/static/search.js) (Root search copy)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_page["Page interactions"]
  node_page_script["Page controls<br/>[script.js]"]
  node_marmite_script["Marmite controls<br/>[marmite.js]"]
end

subgraph group_search["Site search"]
  node_search_ui["Search interface<br/>[search.js]"]
  node_search_index["Search index"]
  node_fuse["Fuse.js"]
end

subgraph group_themes["Theme variants"]
  node_default_script["Default page controls<br/>[script.js]"]
  node_site_script["Site page controls<br/>[script.js]"]
  node_root_site_script["Root site controls<br/>[script.js]"]
  node_default_search["Default search<br/>[search.js]"]
  node_site_search["Site search copy<br/>[search.js]"]
  node_root_site_search["Root search copy<br/>[search.js]"]
  node_site_marmite["Site Marmite controls<br/>[marmite.js]"]
  node_content_site_marmite["Content-site controls<br/>[marmite.js]"]
end

node_visitor(("Site visitor"))
node_giscus["Giscus comments"]

node_visitor -->|"uses controls"| node_page_script
node_visitor -->|"uses controls"| node_marmite_script
node_visitor -->|"enters query"| node_search_ui
node_search_ui -->|"fetches index"| node_search_index
node_search_ui -->|"searches with"| node_fuse
node_visitor -->|"uses controls"| node_default_script
node_visitor -->|"uses controls"| node_site_script
node_visitor -->|"uses controls"| node_root_site_script
node_visitor -->|"enters query"| node_default_search
node_default_search -->|"fetches index"| node_search_index
node_default_search -->|"searches with"| node_fuse
node_visitor -->|"enters query"| node_site_search
node_site_search -->|"fetches index"| node_search_index
node_site_search -->|"searches with"| node_fuse
node_visitor -->|"enters query"| node_root_site_search
node_root_site_search -->|"fetches index"| node_search_index
node_root_site_search -->|"searches with"| node_fuse
node_visitor -->|"uses controls"| node_site_marmite
node_visitor -->|"uses controls"| node_content_site_marmite
node_site_marmite -.->|"updates theme"| node_giscus
node_content_site_marmite -.->|"updates theme"| node_giscus

click node_page_script "https://github.com/fabricio-antonio/meus10centavos/blob/main/content/static/script.js"
click node_marmite_script "https://github.com/fabricio-antonio/meus10centavos/blob/main/content/static/marmite.js"
click node_search_ui "https://github.com/fabricio-antonio/meus10centavos/blob/main/content/static/search.js"
click node_default_script "https://github.com/fabricio-antonio/meus10centavos/blob/main/content/default/static/script.js"
click node_site_script "https://github.com/fabricio-antonio/meus10centavos/blob/main/content/site/static/script.js"
click node_root_site_script "https://github.com/fabricio-antonio/meus10centavos/blob/main/site/static/script.js"
click node_default_search "https://github.com/fabricio-antonio/meus10centavos/blob/main/content/default/static/search.js"
click node_site_search "https://github.com/fabricio-antonio/meus10centavos/blob/main/content/site/static/search.js"
click node_root_site_search "https://github.com/fabricio-antonio/meus10centavos/blob/main/site/static/search.js"
click node_site_marmite "https://github.com/fabricio-antonio/meus10centavos/blob/main/site/static/marmite.js"
click node_content_site_marmite "https://github.com/fabricio-antonio/meus10centavos/blob/main/content/site/static/marmite.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_page_script,node_marmite_script toneBlue
class node_search_ui,node_search_index,node_fuse toneAmber
class node_default_script,node_site_script,node_root_site_script,node_default_search,node_site_search,node_root_site_search,node_site_marmite,node_content_site_marmite toneMint
class node_visitor,node_giscus toneIndigo
```

## Components

### Page interactions

- [Page controls](https://github.com/fabricio-antonio/meus10centavos/blob/main/content/static/script.js): `content/static/script.js`
- [Marmite controls](https://github.com/fabricio-antonio/meus10centavos/blob/main/content/static/marmite.js): `content/static/marmite.js`

### Site search

- [Search interface](https://github.com/fabricio-antonio/meus10centavos/blob/main/content/static/search.js): `content/static/search.js`
- **Search index**
- **Fuse.js**

### Theme variants

- [Default page controls](https://github.com/fabricio-antonio/meus10centavos/blob/main/content/default/static/script.js): `content/default/static/script.js`
- [Site page controls](https://github.com/fabricio-antonio/meus10centavos/blob/main/content/site/static/script.js): `content/site/static/script.js`
- [Root site controls](https://github.com/fabricio-antonio/meus10centavos/blob/main/site/static/script.js): `site/static/script.js`
- [Default search](https://github.com/fabricio-antonio/meus10centavos/blob/main/content/default/static/search.js): `content/default/static/search.js`
- [Site search copy](https://github.com/fabricio-antonio/meus10centavos/blob/main/content/site/static/search.js): `content/site/static/search.js`
- [Root search copy](https://github.com/fabricio-antonio/meus10centavos/blob/main/site/static/search.js): `site/static/search.js`
- [Site Marmite controls](https://github.com/fabricio-antonio/meus10centavos/blob/main/site/static/marmite.js): `site/static/marmite.js`
- [Content-site controls](https://github.com/fabricio-antonio/meus10centavos/blob/main/content/site/static/marmite.js): `content/site/static/marmite.js`

### Other components

- **Site visitor**
- **Giscus comments**

## Connections

- Site visitor → Page controls: uses controls (evidence: `content/static/script.js`)
- Site visitor → Marmite controls: uses controls (evidence: `content/static/marmite.js`)
- Site visitor → Search interface: enters query (evidence: `content/static/search.js`)
- Search interface → Search index: fetches index (evidence: `content/static/search.js`)
- Search interface → Fuse.js: searches with (evidence: `content/static/search.js`)
- Site visitor → Default page controls: uses controls (evidence: `content/default/static/script.js`)
- Site visitor → Site page controls: uses controls (evidence: `content/site/static/script.js`)
- Site visitor → Root site controls: uses controls (evidence: `site/static/script.js`)
- Site visitor → Default search: enters query (evidence: `content/default/static/search.js`)
- Default search → Search index: fetches index (evidence: `content/default/static/search.js`)
- Default search → Fuse.js: searches with (evidence: `content/default/static/search.js`)
- Site visitor → Site search copy: enters query (evidence: `content/site/static/search.js`)
- Site search copy → Search index: fetches index (evidence: `content/site/static/search.js`)
- Site search copy → Fuse.js: searches with (evidence: `content/site/static/search.js`)
- Site visitor → Root search copy: enters query (evidence: `site/static/search.js`)
- Root search copy → Search index: fetches index (evidence: `site/static/search.js`)
- Root search copy → Fuse.js: searches with (evidence: `site/static/search.js`)
- Site visitor → Site Marmite controls: uses controls (evidence: `site/static/marmite.js`)
- Site visitor → Content-site controls: uses controls (evidence: `content/site/static/marmite.js`)
- Site Marmite controls → Giscus comments: updates theme (evidence: `site/static/marmite.js`)
- Content-site controls → Giscus comments: updates theme (evidence: `content/site/static/marmite.js`)
