# tudertshr/portfolio architecture

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

- Interactive diagram: https://gitdiagram.com/tudertshr/portfolio
- Repository: https://github.com/tudertshr/portfolio

## Overview

This is a French-language personal portfolio site presenting projects, professional experience, testimonials, and supporting documents. Its user-facing result is a browsable portfolio with generated project and experience content, detail modals, and interactive sections. The sampled JavaScript also contains UI behavior such as theme/navigation controls and a task list. The excerpts show project and experience data intended for rendering by the main script; reviews render themselves. The README is empty, and the HTML was not sampled, so page wiring and some interactions are not asserted.

Main entry points: [`PROJET/script.js`](https://github.com/tudertshr/portfolio/blob/main/PROJET/script.js) (Project records and scripts), [`script.js`](https://github.com/tudertshr/portfolio/blob/main/script.js) (Interactive site behavior), [`EXP/script.js`](https://github.com/tudertshr/portfolio/blob/main/EXP/script.js) (Experience records and modal), [`doc`](https://github.com/tudertshr/portfolio/tree/main/doc) (Portfolio documents)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_presentation["Portfolio presentation"]
  node_site["Portfolio page<br/>[index.html]"]
  node_ui["Interactive site behavior<br/>[script.js]"]
end

subgraph group_career["Career content"]
  node_experience_data["Experience records and modal<br/>[script.js]"]
  node_reviews["Testimonials<br/>[script.js]"]
end

subgraph group_projects["Project portfolio"]
  node_project_data["Project records and scripts<br/>[script.js]"]
end

subgraph group_supporting["Supporting material"]
  node_documents["Portfolio documents"]
end

node_visitor(("Portfolio visitor"))

node_experience_data -->|"supplies experience data"| node_ui
node_project_data -->|"configures project section"| node_ui
node_project_data -->|"links project PDFs"| node_documents

click node_site "https://github.com/tudertshr/portfolio/blob/main/index.html"
click node_ui "https://github.com/tudertshr/portfolio/blob/main/script.js"
click node_experience_data "https://github.com/tudertshr/portfolio/blob/main/EXP/script.js"
click node_reviews "https://github.com/tudertshr/portfolio/blob/main/REVIEWS/script.js"
click node_project_data "https://github.com/tudertshr/portfolio/blob/main/PROJET/script.js"
click node_documents "https://github.com/tudertshr/portfolio/tree/main/doc"

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_site,node_ui toneBlue
class node_experience_data,node_reviews toneAmber
class node_project_data toneMint
class node_documents toneRose
class node_visitor toneIndigo
```

## Components

### Portfolio presentation

- [Portfolio page](https://github.com/tudertshr/portfolio/blob/main/index.html): `index.html`
- [Interactive site behavior](https://github.com/tudertshr/portfolio/blob/main/script.js): `script.js`

### Career content

- [Experience records and modal](https://github.com/tudertshr/portfolio/blob/main/EXP/script.js): `EXP/script.js`
- [Testimonials](https://github.com/tudertshr/portfolio/blob/main/REVIEWS/script.js): `REVIEWS/script.js`

### Project portfolio

- [Project records and scripts](https://github.com/tudertshr/portfolio/blob/main/PROJET/script.js): `PROJET/script.js`

### Supporting material

- [Portfolio documents](https://github.com/tudertshr/portfolio/tree/main/doc): `doc`

### Other components

- **Portfolio visitor**

## Connections

- Experience records and modal → Interactive site behavior: supplies experience data (evidence: `EXP/script.js`)
- Project records and scripts → Interactive site behavior: configures project section (evidence: `PROJET/script.js`)
- Project records and scripts → Portfolio documents: links project PDFs (evidence: `PROJET/script.js`)
