# luanpc-78/vieitstore architecture

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

- Interactive diagram: https://gitdiagram.com/luanpc-78/vieitstore
- Repository: https://github.com/luanpc-78/vieitstore

## Overview

VieITStore is an ASP.NET Core MVC sales-management application. The documented customer workflow is browsing/searching products, managing a cart, checking out, and tracking orders; staff and administrators manage inventory and orders. The sampled source currently implements only the host pipeline, Home controller, error model, and static/view rendering. Broader store capabilities below are represented from the README using existing enclosing directories, while unsupported internal calls are not inferred.

Main entry points: [`VieITStore/Program.cs`](https://github.com/luanpc-78/vieitstore/blob/master/VieITStore/Program.cs) (ASP.NET Host), [`VieITStore/Controllers/HomeController.cs`](https://github.com/luanpc-78/vieitstore/blob/master/VieITStore/Controllers/HomeController.cs) (Home Controller), [`VieITStore/Views/Home`](https://github.com/luanpc-78/vieitstore/tree/master/VieITStore/Views/Home) (Home Views), [`VieITStore/Models`](https://github.com/luanpc-78/vieitstore/tree/master/VieITStore/Models) (Store Data Models)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_runtime["Web Runtime"]
  node_program["ASP.NET Host<br/>[Program.cs]"]
  node_home_controller["Home Controller<br/>[HomeController.cs]"]
  node_home_views["Home Views"]
  node_static_assets["Static Assets"]
end

subgraph group_customer["Customer Commerce"]
  node_catalog["Catalog Search"]
  node_cart_checkout["Cart Checkout"]
  node_order_tracking["Order Tracking"]
end

subgraph group_operations["Business Operations"]
  node_admin_operations["Admin Operations"]
end

subgraph group_data["Application Data"]
  node_store_models["Store Data Models"]
  node_sql_server[("SQL Server")]
end

node_customer_actor(("Customer"))
node_staff_actor(("Staff Admin"))
node_browser(("Web Browser"))

node_customer_actor -->|"uses"| node_browser
node_staff_actor -->|"uses"| node_browser
node_browser -->|"sends requests"| node_program
node_program -->|"routes requests"| node_home_controller
node_home_controller -->|"returns view"| node_home_views
node_program -->|"serves assets"| node_static_assets
node_home_views -->|"renders page"| node_browser
node_customer_actor -->|"browses products"| node_catalog
node_customer_actor -->|"checks out"| node_cart_checkout
node_customer_actor -->|"tracks orders"| node_order_tracking
node_staff_actor -->|"manages store"| node_admin_operations
node_store_models -->|"persists data"| node_sql_server

click node_program "https://github.com/luanpc-78/vieitstore/blob/master/VieITStore/Program.cs"
click node_home_controller "https://github.com/luanpc-78/vieitstore/blob/master/VieITStore/Controllers/HomeController.cs"
click node_home_views "https://github.com/luanpc-78/vieitstore/tree/master/VieITStore/Views/Home"
click node_static_assets "https://github.com/luanpc-78/vieitstore/tree/master/VieITStore/wwwroot"
click node_catalog "https://github.com/luanpc-78/vieitstore/tree/master/VieITStore/Controllers"
click node_cart_checkout "https://github.com/luanpc-78/vieitstore/tree/master/VieITStore/Controllers"
click node_order_tracking "https://github.com/luanpc-78/vieitstore/tree/master/VieITStore/Controllers"
click node_admin_operations "https://github.com/luanpc-78/vieitstore/tree/master/VieITStore/Controllers"
click node_store_models "https://github.com/luanpc-78/vieitstore/tree/master/VieITStore/Models"

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_program,node_home_controller,node_home_views,node_static_assets,node_browser toneBlue
class node_catalog,node_cart_checkout,node_order_tracking toneAmber
class node_admin_operations toneMint
class node_store_models,node_sql_server toneRose
class node_customer_actor,node_staff_actor toneIndigo
```

## Components

### Web Runtime

- [ASP.NET Host](https://github.com/luanpc-78/vieitstore/blob/master/VieITStore/Program.cs): `VieITStore/Program.cs`
- [Home Controller](https://github.com/luanpc-78/vieitstore/blob/master/VieITStore/Controllers/HomeController.cs): `VieITStore/Controllers/HomeController.cs`
- [Home Views](https://github.com/luanpc-78/vieitstore/tree/master/VieITStore/Views/Home): `VieITStore/Views/Home`
- [Static Assets](https://github.com/luanpc-78/vieitstore/tree/master/VieITStore/wwwroot): `VieITStore/wwwroot`

### Customer Commerce

- [Catalog Search](https://github.com/luanpc-78/vieitstore/tree/master/VieITStore/Controllers): `VieITStore/Controllers`
- [Cart Checkout](https://github.com/luanpc-78/vieitstore/tree/master/VieITStore/Controllers): `VieITStore/Controllers`
- [Order Tracking](https://github.com/luanpc-78/vieitstore/tree/master/VieITStore/Controllers): `VieITStore/Controllers`

### Business Operations

- [Admin Operations](https://github.com/luanpc-78/vieitstore/tree/master/VieITStore/Controllers): `VieITStore/Controllers`

### Application Data

- [Store Data Models](https://github.com/luanpc-78/vieitstore/tree/master/VieITStore/Models): `VieITStore/Models`
- **SQL Server**

### Other components

- **Customer**
- **Staff Admin**
- **Web Browser**

## Connections

- Customer → Web Browser: uses
- Staff Admin → Web Browser: uses
- Web Browser → ASP.NET Host: sends requests
- ASP.NET Host → Home Controller: routes requests
- Home Controller → Home Views: returns view
- ASP.NET Host → Static Assets: serves assets
- Home Views → Web Browser: renders page
- Customer → Catalog Search: browses products
- Customer → Cart Checkout: checks out
- Customer → Order Tracking: tracks orders
- Staff Admin → Admin Operations: manages store
- Store Data Models → SQL Server: persists data
