# chillbroz005/portfolio architecture

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

## Overview

This is a static executive portfolio and interactive résumé for a supply-chain and procurement professional. Visitors enter the home page to browse the profile, career history, skills, projects, and contact options; they can also view the résumé PDF and public GitHub repositories. The page imports portfolio content from the data module and uses browser storage for the theme preference. The sampled source is partial, so editor, GitHub publishing, and other hinted interactions are not mapped beyond what their excerpts confirm.

Main entry points: [`src/app/page.tsx`](https://github.com/chillbroz005/portfolio/blob/main/src/app/page.tsx) (Portfolio page), [`src/app/layout.tsx`](https://github.com/chillbroz005/portfolio/blob/main/src/app/layout.tsx) (Site shell and metadata), [`src/data/profile.ts`](https://github.com/chillbroz005/portfolio/blob/main/src/data/profile.ts) (Résumé content), [`src/data/base.ts`](https://github.com/chillbroz005/portfolio/blob/main/src/data/base.ts) (Base path setting)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_experience["Portfolio content"]
  node_profile["Résumé content<br/>[profile.ts]"]
  node_career["Career timeline<br/>[profile.ts]"]
  node_skills["Skills and education<br/>[profile.ts]"]
  node_projects["Projects and engagements<br/>[profile.ts]"]
end

subgraph group_presentation["Visitor experience"]
  node_home["Portfolio page<br/>[page.tsx]"]
  node_repository_view["Repository display<br/>[page.tsx]"]
  node_layout["Site shell and metadata<br/>[layout.tsx]"]
  node_base_path["Base path setting<br/>[base.ts]"]
end

subgraph group_integrations["External resources"]
  node_resume_pdf["Résumé PDF<br/>[resume.pdf]"]
end

node_visitor(("Portfolio visitor"))
node_github{{"GitHub public API"}}
node_browser_storage[("Browser local storage")]

node_visitor -->|"opens"| node_home
node_home -->|"reads content"| node_profile
node_home -->|"renders timeline"| node_career
node_home -->|"renders details"| node_skills
node_home -->|"renders projects"| node_projects
node_home -->|"links to"| node_resume_pdf
node_home -->|"renders"| node_repository_view
node_home -->|"loads repositories"| node_github
node_github -->|"returns data"| node_repository_view
node_home -->|"reads and writes theme"| node_browser_storage
node_layout -->|"reads"| node_base_path

click node_home "https://github.com/chillbroz005/portfolio/blob/main/src/app/page.tsx"
click node_profile "https://github.com/chillbroz005/portfolio/blob/main/src/data/profile.ts"
click node_career "https://github.com/chillbroz005/portfolio/blob/main/src/data/profile.ts"
click node_skills "https://github.com/chillbroz005/portfolio/blob/main/src/data/profile.ts"
click node_projects "https://github.com/chillbroz005/portfolio/blob/main/src/data/profile.ts"
click node_repository_view "https://github.com/chillbroz005/portfolio/blob/main/src/app/page.tsx"
click node_resume_pdf "https://github.com/chillbroz005/portfolio/blob/main/public/resume.pdf"
click node_layout "https://github.com/chillbroz005/portfolio/blob/main/src/app/layout.tsx"
click node_base_path "https://github.com/chillbroz005/portfolio/blob/main/src/data/base.ts"

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_profile,node_career,node_skills,node_projects toneBlue
class node_home,node_repository_view,node_layout,node_base_path,node_browser_storage toneAmber
class node_resume_pdf,node_github toneMint
class node_visitor toneIndigo
```

## Components

### Portfolio content

- [Résumé content](https://github.com/chillbroz005/portfolio/blob/main/src/data/profile.ts): `src/data/profile.ts`
- [Career timeline](https://github.com/chillbroz005/portfolio/blob/main/src/data/profile.ts): `src/data/profile.ts`
- [Skills and education](https://github.com/chillbroz005/portfolio/blob/main/src/data/profile.ts): `src/data/profile.ts`
- [Projects and engagements](https://github.com/chillbroz005/portfolio/blob/main/src/data/profile.ts): `src/data/profile.ts`

### Visitor experience

- [Portfolio page](https://github.com/chillbroz005/portfolio/blob/main/src/app/page.tsx): `src/app/page.tsx`
- [Repository display](https://github.com/chillbroz005/portfolio/blob/main/src/app/page.tsx): `src/app/page.tsx`
- [Site shell and metadata](https://github.com/chillbroz005/portfolio/blob/main/src/app/layout.tsx): `src/app/layout.tsx`
- [Base path setting](https://github.com/chillbroz005/portfolio/blob/main/src/data/base.ts): `src/data/base.ts`

### External resources

- [Résumé PDF](https://github.com/chillbroz005/portfolio/blob/main/public/resume.pdf): `public/resume.pdf`

### Other components

- **Portfolio visitor**
- **GitHub public API**
- **Browser local storage**

## Connections

- Portfolio visitor → Portfolio page: opens
- Portfolio page → Résumé content: reads content
- Portfolio page → Career timeline: renders timeline
- Portfolio page → Skills and education: renders details
- Portfolio page → Projects and engagements: renders projects
- Portfolio page → Résumé PDF: links to
- Portfolio page → Repository display: renders
- Portfolio page → GitHub public API: loads repositories
- GitHub public API → Repository display: returns data
- Portfolio page → Browser local storage: reads and writes theme
- Site shell and metadata → Base path setting: reads
