# mariamcarlier/project-orodelsol architecture

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

- Interactive diagram: https://gitdiagram.com/mariamcarlier/project-orodelsol
- Repository: https://github.com/mariamcarlier/project-orodelsol

## Overview

Oro del Sol is a Django jewelry storefront and store-administration application. A shopper can browse the product catalog and collections, register or sign in, and access an account profile; staff use a unified dashboard to manage store records. Configuration models cover operational settings such as taxes, shipping, payment methods, and document templates. The excerpts support the main routing, form, view, and model relationships, but do not show checkout or order processing; the document-template service explicitly describes that integration as pending.

Main entry points: [`core/dashboard.py`](https://github.com/mariamcarlier/project-orodelsol/blob/main/core/dashboard.py) (Admin dashboard), [`app/urls.py`](https://github.com/mariamcarlier/project-orodelsol/blob/main/app/urls.py) (Application routing), [`usuarios/views.py`](https://github.com/mariamcarlier/project-orodelsol/blob/main/usuarios/views.py) (Account views), [`usuarios/forms.py`](https://github.com/mariamcarlier/project-orodelsol/blob/main/usuarios/forms.py) (Login & signup)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_storefront["Storefront"]
  node_routing["Application routing<br/>[urls.py]"]
  node_catalog["Catalog views<br/>[views.py]"]
  node_catalog_data[("Products &amp; collections<br/>[models.py]")]
end

subgraph group_identity["Accounts"]
  node_auth["Login &amp; signup<br/>[forms.py]"]
  node_user_views["Account views<br/>[views.py]"]
  node_user_sections["Account sections<br/>[secciones.py]"]
  node_user_data[("User accounts<br/>[models.py]")]
end

subgraph group_admin["Administration"]
  node_dashboard["Admin dashboard<br/>[dashboard.py]"]
end

subgraph group_configuration["Store configuration"]
  node_config_forms["Configuration forms<br/>[forms.py]"]
  node_config_data[("Store settings<br/>[models.py]")]
  node_template_service["Document templates<br/>[services.py]"]
end

node_shopper(("Shopper"))
node_staff(("Store staff"))

node_shopper -->|"requests pages"| node_routing
node_staff -->|"requests admin"| node_routing
node_routing -->|"routes storefront"| node_catalog
node_routing -->|"routes account"| node_user_views
node_routing -->|"configures login"| node_auth
node_catalog -->|"queries catalog"| node_catalog_data
node_routing -->|"routes dashboard"| node_dashboard
node_dashboard -->|"manages records"| node_catalog_data
node_dashboard -->|"manages users"| node_user_data
node_dashboard -->|"manages settings"| node_config_data
node_dashboard -->|"uses forms"| node_config_forms
node_dashboard -->|"uses user forms"| node_auth
node_user_views -->|"validates account"| node_auth
node_user_views -->|"selects sections"| node_user_sections
node_user_views -->|"reads profile"| node_user_data
node_auth -->|"authenticates users"| node_user_data
node_config_forms -->|"validates settings"| node_config_data
node_template_service -->|"resolves templates"| node_config_data

click node_routing "https://github.com/mariamcarlier/project-orodelsol/blob/main/app/urls.py"
click node_catalog "https://github.com/mariamcarlier/project-orodelsol/blob/main/core/views.py"
click node_catalog_data "https://github.com/mariamcarlier/project-orodelsol/blob/main/core/models.py"
click node_auth "https://github.com/mariamcarlier/project-orodelsol/blob/main/usuarios/forms.py"
click node_user_views "https://github.com/mariamcarlier/project-orodelsol/blob/main/usuarios/views.py"
click node_user_sections "https://github.com/mariamcarlier/project-orodelsol/blob/main/usuarios/secciones.py"
click node_user_data "https://github.com/mariamcarlier/project-orodelsol/blob/main/usuarios/models.py"
click node_dashboard "https://github.com/mariamcarlier/project-orodelsol/blob/main/core/dashboard.py"
click node_config_forms "https://github.com/mariamcarlier/project-orodelsol/blob/main/configuracion/forms.py"
click node_config_data "https://github.com/mariamcarlier/project-orodelsol/blob/main/configuracion/models.py"
click node_template_service "https://github.com/mariamcarlier/project-orodelsol/blob/main/configuracion/services.py"

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_routing,node_catalog,node_catalog_data toneBlue
class node_auth,node_user_views,node_user_sections,node_user_data toneAmber
class node_dashboard toneMint
class node_config_forms,node_config_data,node_template_service toneRose
class node_shopper,node_staff toneIndigo
```

## Components

### Storefront

- [Application routing](https://github.com/mariamcarlier/project-orodelsol/blob/main/app/urls.py): `app/urls.py`
- [Catalog views](https://github.com/mariamcarlier/project-orodelsol/blob/main/core/views.py): `core/views.py`
- [Products & collections](https://github.com/mariamcarlier/project-orodelsol/blob/main/core/models.py): `core/models.py`

### Accounts

- [Login & signup](https://github.com/mariamcarlier/project-orodelsol/blob/main/usuarios/forms.py): `usuarios/forms.py`
- [Account views](https://github.com/mariamcarlier/project-orodelsol/blob/main/usuarios/views.py): `usuarios/views.py`
- [Account sections](https://github.com/mariamcarlier/project-orodelsol/blob/main/usuarios/secciones.py): `usuarios/secciones.py`
- [User accounts](https://github.com/mariamcarlier/project-orodelsol/blob/main/usuarios/models.py): `usuarios/models.py`

### Administration

- [Admin dashboard](https://github.com/mariamcarlier/project-orodelsol/blob/main/core/dashboard.py): `core/dashboard.py`

### Store configuration

- [Configuration forms](https://github.com/mariamcarlier/project-orodelsol/blob/main/configuracion/forms.py): `configuracion/forms.py`
- [Store settings](https://github.com/mariamcarlier/project-orodelsol/blob/main/configuracion/models.py): `configuracion/models.py`
- [Document templates](https://github.com/mariamcarlier/project-orodelsol/blob/main/configuracion/services.py): `configuracion/services.py`

### Other components

- **Shopper**
- **Store staff**

## Connections

- Shopper → Application routing: requests pages
- Store staff → Application routing: requests admin
- Application routing → Catalog views: routes storefront (evidence: `app/urls.py`)
- Application routing → Account views: routes account (evidence: `app/urls.py`)
- Application routing → Login & signup: configures login (evidence: `app/urls.py`)
- Catalog views → Products & collections: queries catalog (evidence: `core/views.py`)
- Application routing → Admin dashboard: routes dashboard
- Admin dashboard → Products & collections: manages records (evidence: `core/dashboard.py`)
- Admin dashboard → User accounts: manages users (evidence: `core/dashboard.py`)
- Admin dashboard → Store settings: manages settings (evidence: `core/dashboard.py`)
- Admin dashboard → Configuration forms: uses forms (evidence: `core/dashboard.py`)
- Admin dashboard → Login & signup: uses user forms (evidence: `core/dashboard.py`)
- Account views → Login & signup: validates account (evidence: `usuarios/views.py`)
- Account views → Account sections: selects sections (evidence: `usuarios/views.py`)
- Account views → User accounts: reads profile (evidence: `usuarios/views.py`)
- Login & signup → User accounts: authenticates users (evidence: `usuarios/forms.py`)
- Configuration forms → Store settings: validates settings (evidence: `configuracion/forms.py`)
- Document templates → Store settings: resolves templates (evidence: `configuracion/services.py`)
