# winfum/winfumstore architecture

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

- Interactive diagram: https://gitdiagram.com/winfum/winfumstore
- Repository: https://github.com/winfum/winfumstore

## Overview

Winfumstore appears to be a small multi-page storefront with customer account, administration, and informational pages. The README provides no feature detail; the account-sync source documents local favorites/cart behavior and Supabase synchronization for approved customers. Other page responsibilities and their runtime wiring are inferred only from filenames, so their links are omitted where unsupported.

Main entry points: [`winfumaccount.js`](https://github.com/winfum/winfumstore/blob/main/winfumaccount.js) (Favorites and cart sync), [`index.html`](https://github.com/winfum/winfumstore/blob/main/index.html) (Main storefront), [`jbparfumerie.html`](https://github.com/winfum/winfumstore/blob/main/jbparfumerie.html) (Parfumerie shop), [`funforus.html`](https://github.com/winfum/winfumstore/blob/main/funforus.html) (Funforus shop)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_storefront["Storefront"]
  node_index["Main storefront<br/>[index.html]"]
  node_parfumerie["Parfumerie shop<br/>[jbparfumerie.html]"]
  node_funforus["Funforus shop<br/>[funforus.html]"]
end

subgraph group_account["Customer account"]
  node_accountpage["Account page<br/>[espace.html]"]
  node_sync["Favorites and cart sync<br/>[winfumaccount.js]"]
  node_local[("Browser storage")]
  node_supabase[("Supabase")]
end

subgraph group_site["Site pages"]
  node_admin["Admin page<br/>[admin.html]"]
  node_manager["Manager page<br/>[manager.html]"]
  node_about["About page<br/>[apropos.html]"]
  node_privacy["Privacy page"]
  node_support["Support page"]
end

node_visitor(("Visitor"))

node_visitor -->|"visits"| node_index
node_visitor -->|"visits"| node_parfumerie
node_visitor -->|"visits"| node_funforus
node_visitor -->|"visits"| node_accountpage
node_visitor -->|"visits"| node_admin
node_visitor -->|"visits"| node_manager
node_visitor -->|"visits"| node_about
node_visitor -->|"visits"| node_privacy
node_visitor -->|"visits"| node_support
node_index -.->|"loads script"| node_sync
node_parfumerie -.->|"loads script"| node_sync
node_funforus -.->|"loads script"| node_sync
node_accountpage -.->|"loads script"| node_sync
node_sync -->|"reads/writes"| node_local
node_sync -->|"auth and sync"| node_supabase

click node_index "https://github.com/winfum/winfumstore/blob/main/index.html"
click node_parfumerie "https://github.com/winfum/winfumstore/blob/main/jbparfumerie.html"
click node_funforus "https://github.com/winfum/winfumstore/blob/main/funforus.html"
click node_accountpage "https://github.com/winfum/winfumstore/blob/main/espace.html"
click node_sync "https://github.com/winfum/winfumstore/blob/main/winfumaccount.js"
click node_admin "https://github.com/winfum/winfumstore/blob/main/admin.html"
click node_manager "https://github.com/winfum/winfumstore/blob/main/manager.html"
click node_about "https://github.com/winfum/winfumstore/blob/main/apropos.html"
click node_support "https://github.com/winfum/winfumstore/blob/main/contact-support.html"

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_index,node_parfumerie,node_funforus toneBlue
class node_accountpage,node_sync,node_local,node_supabase toneAmber
class node_admin,node_manager,node_about,node_privacy,node_support toneMint
class node_visitor toneIndigo
```

## Components

### Storefront

- [Main storefront](https://github.com/winfum/winfumstore/blob/main/index.html): `index.html`
- [Parfumerie shop](https://github.com/winfum/winfumstore/blob/main/jbparfumerie.html): `jbparfumerie.html`
- [Funforus shop](https://github.com/winfum/winfumstore/blob/main/funforus.html): `funforus.html`

### Customer account

- [Account page](https://github.com/winfum/winfumstore/blob/main/espace.html): `espace.html`
- [Favorites and cart sync](https://github.com/winfum/winfumstore/blob/main/winfumaccount.js): `winfumaccount.js`
- **Browser storage**
- **Supabase**

### Site pages

- [Admin page](https://github.com/winfum/winfumstore/blob/main/admin.html): `admin.html`
- [Manager page](https://github.com/winfum/winfumstore/blob/main/manager.html): `manager.html`
- [About page](https://github.com/winfum/winfumstore/blob/main/apropos.html): `apropos.html`
- **Privacy page**
- [Support page](https://github.com/winfum/winfumstore/blob/main/contact-support.html): `contact-support.html`

### Other components

- **Visitor**

## Connections

- Visitor → Main storefront: visits
- Visitor → Parfumerie shop: visits
- Visitor → Funforus shop: visits
- Visitor → Account page: visits
- Visitor → Admin page: visits
- Visitor → Manager page: visits
- Visitor → About page: visits
- Visitor → Privacy page: visits
- Visitor → Support page: visits
- Main storefront → Favorites and cart sync: loads script
- Parfumerie shop → Favorites and cart sync: loads script
- Funforus shop → Favorites and cart sync: loads script
- Account page → Favorites and cart sync: loads script
- Favorites and cart sync → Browser storage: reads/writes
- Favorites and cart sync → Supabase: auth and sync
