# oscarg101010/chickendevs architecture

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

- Interactive diagram: https://gitdiagram.com/oscarg101010/chickendevs
- Repository: https://github.com/oscarg101010/chickendevs

## Overview

This is a small ASP.NET Core Razor Pages storefront for browsing a hard-coded menu and maintaining a shopping cart. A visitor reaches the home page, where its page model supplies products and loads the cart; add/remove form submissions update the cart and save it in session before redirecting back. The cart computes item subtotals, tax, and total. Program.cs wires Razor Pages and session middleware. No README or page markup was provided, so details of the rendered interface are not verified.

Main entry points: [`Equipo4/Equipo4/Pages/Index.cshtml.cs`](https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Pages/Index.cshtml.cs) (Home page handlers), [`Equipo4/Equipo4/Program.cs`](https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Program.cs) (App pipeline), [`Equipo4/Equipo4/Serializado/Serializador.cs`](https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Serializado/Serializador.cs) (Session serializer), [`Equipo4/Equipo4/Pages/Index.cshtml`](https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Pages/Index.cshtml) (Home page view)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_web["Web interface"]
  node_program["App pipeline<br/>[Program.cs]"]
  node_index["Home page handlers<br/>[Index.cshtml.cs]"]
  node_indexview["Home page view<br/>[Index.cshtml]"]
  node_error["Error page<br/>[Error.cshtml.cs]"]
end

subgraph group_cart["Catalog and cart"]
  node_product["Product data<br/>[Producto.cs]"]
  node_cartmodel["Cart and totals<br/>[Carrito.cs]"]
end

subgraph group_state["Session state"]
  node_serializer["Session serializer<br/>[Serializador.cs]"]
  node_session[("Session store")]
end

node_visitor(("Visitor"))

node_visitor -->|"requests pages"| node_program
node_program -->|"routes pages"| node_index
node_program -->|"handles exceptions"| node_error
node_index -->|"renders model"| node_indexview
node_index -->|"defines catalog"| node_product
node_index -->|"loads and saves"| node_serializer
node_index -->|"updates cart"| node_cartmodel
node_serializer -->|"reads and writes"| node_session

click node_program "https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Program.cs"
click node_index "https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Pages/Index.cshtml.cs"
click node_indexview "https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Pages/Index.cshtml"
click node_error "https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Pages/Error.cshtml.cs"
click node_product "https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Models/Producto.cs"
click node_cartmodel "https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Models/Carrito.cs"
click node_serializer "https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Serializado/Serializador.cs"

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_index,node_indexview,node_error toneBlue
class node_product,node_cartmodel toneAmber
class node_serializer,node_session toneMint
class node_visitor toneIndigo
```

## Components

### Web interface

- [App pipeline](https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Program.cs): `Equipo4/Equipo4/Program.cs`
- [Home page handlers](https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Pages/Index.cshtml.cs): `Equipo4/Equipo4/Pages/Index.cshtml.cs`
- [Home page view](https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Pages/Index.cshtml): `Equipo4/Equipo4/Pages/Index.cshtml`
- [Error page](https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Pages/Error.cshtml.cs): `Equipo4/Equipo4/Pages/Error.cshtml.cs`

### Catalog and cart

- [Product data](https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Models/Producto.cs): `Equipo4/Equipo4/Models/Producto.cs`
- [Cart and totals](https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Models/Carrito.cs): `Equipo4/Equipo4/Models/Carrito.cs`

### Session state

- [Session serializer](https://github.com/oscarg101010/chickendevs/blob/main/Equipo4/Equipo4/Serializado/Serializador.cs): `Equipo4/Equipo4/Serializado/Serializador.cs`
- **Session store**

### Other components

- **Visitor**

## Connections

- Visitor → App pipeline: requests pages
- App pipeline → Home page handlers: routes pages
- App pipeline → Error page: handles exceptions
- Home page handlers → Home page view: renders model
- Home page handlers → Product data: defines catalog
- Home page handlers → Session serializer: loads and saves
- Home page handlers → Cart and totals: updates cart
- Session serializer → Session store: reads and writes
