# aeronsal/aeron-salinas-portfolio architecture

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

## Overview

This repository appears to be a Laravel-based personal portfolio site with a contact-form email workflow. The main path is a visitor request handled by Laravel and rendered as portfolio content; contact submissions are validated and sent as email. The tree shows portfolio sections and frontend assets, but the route definitions and most view contents were not sampled, so their detailed wiring is uncertain. The Laravel README describes the framework, not additional application capabilities.

Main entry points: [`app/Http/Controllers/ContactController.php`](https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/app/Http/Controllers/ContactController.php) (Contact submission), [`public/index.php`](https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/public/index.php) (HTTP entry), [`bootstrap/app.php`](https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/bootstrap/app.php) (App bootstrap), [`routes/web.php`](https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/routes/web.php) (Web routes)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_runtime["Web runtime"]
  node_entry["HTTP entry<br/>[index.php]"]
  node_bootstrap["App bootstrap<br/>[app.php]"]
  node_routes["Web routes<br/>[web.php]"]
end

subgraph group_portfolio["Portfolio experience"]
  node_portfolio_page["Portfolio page"]
  node_project_card["Project card"]
  node_skill_card["Skill card"]
  node_resume["Resume content"]
  node_portfolio_css["Portfolio styles<br/>[portfolio.css]"]
  node_portfolio_js["Portfolio scripts<br/>[portfolio.js]"]
end

subgraph group_contact["Contact email"]
  node_contact_form["Contact submission"]
  node_mail_message["Contact email"]
  node_mail_view["Email template<br/>[contact.blade.php]"]
  node_mail_transport["Mail transport"]
end

node_visitor(("Visitor"))

node_visitor -->|"requests page"| node_entry
node_entry -->|"boots app"| node_bootstrap
node_bootstrap -->|"loads routes"| node_routes
node_routes -->|"renders page"| node_portfolio_page
node_visitor -->|"submits form"| node_contact_form
node_contact_form -->|"sends message"| node_mail_message
node_mail_message -->|"renders email"| node_mail_view
node_contact_form -->|"dispatches mail"| node_mail_transport

click node_entry "https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/public/index.php"
click node_bootstrap "https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/bootstrap/app.php"
click node_routes "https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/routes/web.php"
click node_portfolio_page "https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/resources/views/portfolio.blade.php"
click node_project_card "https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/resources/views/components/project-card.blade.php"
click node_skill_card "https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/resources/views/components/skill-card.blade.php"
click node_resume "https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/resources/views/components/resume-content.blade.php"
click node_portfolio_css "https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/public/css/portfolio.css"
click node_portfolio_js "https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/public/js/portfolio.js"
click node_contact_form "https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/app/Http/Controllers/ContactController.php"
click node_mail_message "https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/app/Mail/ContactFormMail.php"
click node_mail_view "https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/resources/views/emails/contact.blade.php"

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_entry,node_bootstrap,node_routes toneBlue
class node_portfolio_page,node_project_card,node_skill_card,node_resume,node_portfolio_css,node_portfolio_js toneAmber
class node_contact_form,node_mail_message,node_mail_view,node_mail_transport toneMint
class node_visitor toneIndigo
```

## Components

### Web runtime

- [HTTP entry](https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/public/index.php): `public/index.php`
- [App bootstrap](https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/bootstrap/app.php): `bootstrap/app.php`
- [Web routes](https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/routes/web.php): `routes/web.php`

### Portfolio experience

- [Portfolio page](https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/resources/views/portfolio.blade.php): `resources/views/portfolio.blade.php`
- [Project card](https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/resources/views/components/project-card.blade.php): `resources/views/components/project-card.blade.php`
- [Skill card](https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/resources/views/components/skill-card.blade.php): `resources/views/components/skill-card.blade.php`
- [Resume content](https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/resources/views/components/resume-content.blade.php): `resources/views/components/resume-content.blade.php`
- [Portfolio styles](https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/public/css/portfolio.css): `public/css/portfolio.css`
- [Portfolio scripts](https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/public/js/portfolio.js): `public/js/portfolio.js`

### Contact email

- [Contact submission](https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/app/Http/Controllers/ContactController.php): `app/Http/Controllers/ContactController.php`
- [Contact email](https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/app/Mail/ContactFormMail.php): `app/Mail/ContactFormMail.php`
- [Email template](https://github.com/aeronsal/aeron-salinas-portfolio/blob/main/resources/views/emails/contact.blade.php): `resources/views/emails/contact.blade.php`
- **Mail transport**

### Other components

- **Visitor**

## Connections

- Visitor → HTTP entry: requests page
- HTTP entry → App bootstrap: boots app
- App bootstrap → Web routes: loads routes
- Web routes → Portfolio page: renders page
- Visitor → Contact submission: submits form
- Contact submission → Contact email: sends message
- Contact email → Email template: renders email
- Contact submission → Mail transport: dispatches mail
